日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

XML、集合、JSP综合练习

發(fā)布時(shí)間:2025/5/22 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 XML、集合、JSP综合练习 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、利用DOM解析XML文件得到信息;存入泛型集合中在JSP頁(yè)面循環(huán)打印讀取的信息

a)???????? 編寫(xiě)XML文件;添加測(cè)試節(jié)點(diǎn)數(shù)據(jù)

b)???????? 建立web項(xiàng)目;在JSP頁(yè)面中使用DOM解析XML技術(shù)得到XML中的新聞信息

c)???????? 創(chuàng)建實(shí)體類news;對(duì)新聞實(shí)體類進(jìn)行封裝;使用新聞實(shí)體類對(duì)新聞數(shù)據(jù)進(jìn)行封裝

d)???????? 創(chuàng)建新聞?lì)惙盒图洗鎯?chǔ)每條新聞信息

e)???????? 在頁(yè)面利用循環(huán)和顯示標(biāo)簽展示數(shù)據(jù)

效果:

XML文件:

展示效果:

編寫(xiě)xml文件

1 <?xml version="1.0" encoding="UTF-8"?> 2 3 -<news> 4 5 6 -<new id="1"> 7 8 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 9 10 <type>時(shí)政要聞</type> 11 12 <date>2015-04-27 17:40</date> 13 14 <author>小編</author> 15 16 </new> 17 18 19 -<new id="2"> 20 21 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 22 23 <type>時(shí)政要聞</type> 24 25 <date>2015-04-27 17:40</date> 26 27 <author>小編</author> 28 29 </new> 30 31 32 -<new id="3"> 33 34 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 35 36 <type>時(shí)政要聞</type> 37 38 <date>2015-04-27 17:40</date> 39 40 <author>小編</author> 41 42 </new> 43 44 45 -<new id="4"> 46 47 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 48 49 <type>時(shí)政要聞</type> 50 51 <date>2015-04-27 17:40</date> 52 53 <author>小編</author> 54 55 </new> 56 57 58 -<new id="5"> 59 60 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 61 62 <type>時(shí)政要聞</type> 63 64 <date>2015-04-27 17:40</date> 65 66 <author>小編</author> 67 68 </new> 69 70 71 -<new id="6"> 72 73 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 74 75 <type>時(shí)政要聞</type> 76 77 <date>2015-04-27 17:40</date> 78 79 <author>小編</author> 80 81 </new> 82 83 84 -<new id="7"> 85 86 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 87 88 <type>時(shí)政要聞</type> 89 90 <date>2015-04-27 17:40</date> 91 92 <author>小編</author> 93 94 </new> 95 96 97 -<new id="8"> 98 99 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 100 101 <type>時(shí)政要聞</type> 102 103 <date>2015-04-27 17:40</date> 104 105 <author>小編</author> 106 107 </new> 108 109 110 -<new id="9"> 111 112 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 113 114 <type>時(shí)政要聞</type> 115 116 <date>2015-04-27 17:40</date> 117 118 <author>小編</author> 119 120 </new> 121 122 123 -<new id="10"> 124 125 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 126 127 <type>時(shí)政要聞</type> 128 129 <date>2015-04-27 17:40</date> 130 131 <author>小編</author> 132 133 </new> 134 135 136 -<new id="11"> 137 138 <title>關(guān)于依法治國(guó)論述摘編發(fā)行會(huì)見(jiàn)緬甸客人</title> 139 140 <type>時(shí)政要聞</type> 141 142 <date>2015-04-27 17:40</date> 143 144 <author>小編</author> 145 146 </new> 147 148 </news>


創(chuàng)建實(shí)體類news;對(duì)新聞實(shí)體類進(jìn)行封裝;使用新聞實(shí)體類對(duì)新聞數(shù)據(jù)進(jìn)行封裝

package entity;/*** 新聞?lì)? @author Administrator**/ public class News {private String id;//新聞IDprivate String title;//標(biāo)題private String type;//新聞?lì)愋?/span>private String date;//發(fā)布時(shí)間private String author;//作者public String getId() {return id;}public void setId(String id) {this.id = id;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getType() {return type;}public void setType(String type) {this.type = type;}public String getDate() {return date;}public void setDate(String date) {this.date = date;}public String getAuthor() {return author;}public void setAuthor(String author) {this.author = author;}}

用泛型集合從頁(yè)面輸出效果

1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <%@page import="javax.xml.parsers.DocumentBuilderFactory"%> 3 <%@page import="javax.xml.parsers.DocumentBuilder"%> 4 <%@page import="org.w3c.dom.Document"%> 5 <%@page import="org.w3c.dom.NodeList"%> 6 <%@page import="org.w3c.dom.Node"%> 7 <%@page import="entity.News"%> 8 <%@page import="org.w3c.dom.Element"%> 9 <% 10 String path = request.getContextPath(); 11 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 12 %> 13 14 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 15 <html> 16 <head> 17 <base href="<%=basePath%>"> 18 19 <title>解析顯示新聞</title> 20 21 </head> 22 23 <body> 24 <% 25 //建立dom解析器工廠實(shí)例 26 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 27 28 //得到解析器對(duì)象 29 DocumentBuilder db = dbf.newDocumentBuilder(); 30 31 //得到web工程根目錄 32 System.out.print(request.getRealPath("/")); 33 //加載XML文件;創(chuàng)建docuemnt對(duì)象(生成dom樹(shù)) 34 Document dom = db.parse(request.getRealPath("/")+"/new.xml"); 35 36 //開(kāi)始解析新聞 37 NodeList nodelist = dom.getElementsByTagName("new"); 38 39 //創(chuàng)建泛型集合存儲(chǔ)解析的新聞信息 40 List<News> newslist = new ArrayList<News>(); 41 42 //循環(huán)解析 43 for(int i = 0; i < nodelist.getLength(); i++){ 44 45 //得到每個(gè)node(節(jié)點(diǎn))對(duì)象 46 Node newnode = nodelist.item(i); 47 48 //將節(jié)點(diǎn)對(duì)象轉(zhuǎn)換為元素對(duì)象 49 Element element = (Element)newnode; 50 51 //得到新聞的id屬性 52 String newid = element.getAttribute("id"); 53 54 //創(chuàng)建新聞對(duì)象 55 News news = new News(); 56 57 //將id存儲(chǔ)在新聞對(duì)象中 58 news.setId(newid); 59 60 //獲取其他節(jié)點(diǎn)屬性 61 for(Node news_child = newnode.getFirstChild(); news_child != null;news_child = news_child.getNextSibling()){ 62 63 //判斷當(dāng)前是元素對(duì)象還是節(jié)點(diǎn)對(duì)象 64 if(news_child.getNodeType() == Node.ELEMENT_NODE){ 65 66 if(news_child.getNodeName().equals("title")){ 67 //獲取新聞標(biāo)題;將標(biāo)題封裝到對(duì)象中 68 news.setTitle(news_child.getFirstChild().getNodeValue()); 69 } 70 if(news_child.getNodeName().equals("type")){ 71 //獲取新聞?lì)愋?將標(biāo)題封裝到對(duì)象中 72 news.setType(news_child.getFirstChild().getNodeValue()); 73 } 74 if(news_child.getNodeName().equals("date")){ 75 //獲取新聞發(fā)布時(shí)間;將標(biāo)題封裝到對(duì)象中 76 news.setDate(news_child.getFirstChild().getNodeValue()); 77 } 78 if(news_child.getNodeName().equals("author")){ 79 //獲取新聞作者;將標(biāo)題封裝到對(duì)象中 80 news.setAuthor(news_child.getFirstChild().getNodeValue()); 81 } 82 83 } 84 } 85 //將新聞對(duì)象放入泛型集合中 86 newslist.add(news); 87 } 88 %> 89 90 <center> 91 <table style="width: 800px; height: auto; border:1px solid #900;font-size: 12px" cellpadding="0" cellspacing="0"> 92 <tr style="text-align: center;background: #900; color: #ffffff;border: 1px solid #900"> 93 <td>新聞ID</td> 94 <td>新聞標(biāo)題</td> 95 <td>新聞?lì)愋?lt;/td> 96 <td>發(fā)布時(shí)間</td> 97 <td>發(fā)布作者</td> 98 </tr> 99 <% 100 //循環(huán)新聞列表 101 for(int i = 0; i < newslist.size(); i ++){ 102 //取出集合中每個(gè)新聞實(shí)體對(duì)象 103 News news = newslist.get(i); 104 %> 105 <tr> 106 <td style="text-align: center;border: 1px solid #900;height:30px"><%=news.getId() %></td> 107 <td style="text-align: center;border: 1px solid #900;height:30px"><%=news.getTitle() %></td> 108 <td style="text-align: center;border: 1px solid #900;height:30px"><%=news.getType() %></td> 109 <td style="text-align: center;border: 1px solid #900;height:30px"><%=news.getDate() %></td> 110 <td style="text-align: center;border: 1px solid #900;height:30px"><%=news.getAuthor() %></td> 111 </tr> 112 <% 113 } 114 %> 115 </table> 116 </center> 117 </body> 118 </html>

?

轉(zhuǎn)載于:https://www.cnblogs.com/wlx520/p/4493058.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的XML、集合、JSP综合练习的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。