亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

xml中的dtd約束的加深了解以及dom的解析方式和jaxp解析xml文檔 ——Web部分第七天

2019-11-14 13:14:27
字體:
來源:轉載
供稿:網友

xml中的dtd約束的加深了解以及dom的解析方式和jaxp解析xml文檔 ——Web部分第七天

dtd約束的加深

* 語法<!ATTLIST 元素名稱 屬性名稱 屬性類型 屬性的約束>* 屬性類型包括: - CDATA : 字符串 - 枚舉 : 如(aa|bb|cc)只能出現其中一個 - ID : 值只能是字母或者下劃線開頭<!ATTLIST name ID3 CDATA #REQUIRED><!ATTLIST name ID3 (aa|bb|cc) #REQUIRED><!ATTLIST name ID3 ID #REQUIRED>* 屬性的約束 - #REQUIRED : 屬性必須存在 - #IMPLIED : 屬性可有可無 - FIXED : 表示一個固定值如#FIXED "aaa" , 屬性必須設置這個固定值 ; - 直接值 : 不寫屬性,使用直接值, 寫了屬性,就用那個值。(相當于默認值)* 定義實體 - 語法<!ENTITY 實體名稱 "實體內容"> - 引用時 &實體名稱;(注:包括分號)。

- 定義實體要寫在內部dtd里面,否則某些瀏覽器解析不到。

xml的解析方式

* xml的解析方式dom和sax(同html相同),三家公司提供了dom解析器 - jaxp(java相關) , dom4j(實際開發) , jdom 。

jaxp解析xml文檔

* 包 javax.xml.perser , javax.xml.transform , org.w3c.dom ;* 下為dom的解析方式,添加刪除的原理和js相同,個別方法名不同。package com.xml.test;import java.io.IOException;import java.security.acl.Permission;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import javax.xml.transform.Transformer;import javax.xml.transform.TransformerFactory;import javax.xml.transform.dom.DOMSource;import javax.xml.transform.stream.StreamResult;import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.Node;import org.w3c.dom.NodeList;import org.w3c.dom.Text;import org.xml.sax.SAXException;public class xmlTest { public static void main(String [] args) throws Exception{ //test01(); //test02(); //test03() ; //test04() ; //test05() ; test06() ; } /* * 遞歸遍歷所有節點 */ PRivate static void test06() throws Exception { Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder() .parse("src/person.xml") ; Node node = document.getElementsByTagName("person").item(0) ; listAll(node) ; } private static void listAll(Node node) { if (node.getNodeType() == Node.ELEMENT_NODE ) { System.out.println(node.getNodeName()) ; } NodeList nodeList = node.getChildNodes() ; for(int i = 0 ; i < nodeList.getLength() ; i++ ){ Node nodeText = nodeList.item(i) ; if (nodeText.getNodeType() == Node.TEXT_NODE) { System.out.println(nodeText.getTextContent()); } listAll(nodeText) ; } } /* * 刪除節點sex */ private static void test05() throws Exception { Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder() .parse("src/person.xml") ; Node node = document.getElementsByTagName("p1").item(0) ; Node node2 = document.getElementsByTagName("sex").item(0) ; node.removeChild(node2) ; Transformer transformer = TransformerFactory.newInstance().newTransformer() ; transformer.transform(new DOMSource(document) , new StreamResult("src/person.xml")) ; } /* * 修改xml標簽下的內容 * 在p1的標簽下修改<sex>nv</sex> nv為nan */ private static void test04() throws Exception { Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder() .parse("src/person.xml") ; Node node = document.getElementsByTagName("sex").item(0) ; node.setTextContent("nan") ; Transformer transformer = TransformerFactory.newInstance().newTransformer() ; transformer.transform(new DOMSource(document) , new StreamResult("src/person.xml")); } /* * 在p1的標簽下添加<sex>nv</sex> * * 重點: 添加完成后的回寫動作。 * * java的操作是在內存中完成的,并沒有回寫到文件。 */ private static void test03() throws Exception { Document document = DocumentBuilderFactory.newInstance() .newDocumentBuilder().parse("src/person.xml") ; Element sex = document.createElement("sex") ; Text sexText = document.createTextNode("nv") ; sex.appendChild(sexText) ; NodeList nodeList = document.getElementsByTagName("p1") ; nodeList.item(0).appendChild(sex) ; //回寫操作 Transformer transform = TransformerFactory.newInstance().newTransformer() ; transform.transform(new DOMSource(document) , new StreamResult("src/person.xml")) ; } /* * 查詢某一個節點。 */ private static void test02() throws Exception { DocumentBuilder documentBuilder = DocumentBuilderFactory .newInstance().newDocumentBuilder() ; Document document = documentBuilder.parse("src/Person.xml") ; NodeList nodeList = document.getElementsByTagName("name") ; Node node = nodeList.item(0) ; System.out.println(node.getTextContent()) ; } /* * 遍歷xml */ private static void test01() throws Exception { //創建解析器工廠實例 DocumentBuilderFactory dbd = DocumentBuilderFactory.newInstance() ; //通過解析器工廠實例得到解析器 DocumentBuilder db = dbd.newDocumentBuilder() ; //通過解析器解析文檔,得到Document對象 Document document = db.parse("src/person.xml") ; //得到標簽節點 NodeList nodeList = document.getElementsByTagName("name") ; for(int i = 0 ; i < nodeList.getLength() ; i++ ){ //得到Node里面的值 Node node = nodeList.item(i) ; String str = node.getTextContent() ; System.out.println(str); } }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久精品免费视频| 欧美精品激情在线观看| 欧美色xxxx| 国产激情视频一区| 久久久免费av| 欧美精品18videos性欧美| 性金发美女69hd大尺寸| 国产精品极品在线| 日韩经典一区二区三区| 国产激情综合五月久久| 欧美精品日韩www.p站| 欧美xxxx做受欧美.88| 91九色视频在线| 日韩美女激情视频| 九九热精品视频在线播放| 性欧美在线看片a免费观看| 日韩av中文字幕在线播放| 中文字幕亚洲情99在线| 国产精品久久久久久超碰| 亚洲女人天堂视频| 91精品啪aⅴ在线观看国产| 国产精品国产三级国产专播精品人| 欧美日韩在线视频一区二区| 日韩欧美在线字幕| 日韩欧美成人网| 亚洲国产精品一区二区久| 欧美二区在线播放| 91亚洲国产成人精品性色| 操人视频在线观看欧美| 亚洲成人在线网| 亚洲精品国产综合区久久久久久久| 欧美高跟鞋交xxxxxhd| 久久精品91久久香蕉加勒比| 国产精品日韩一区| 91在线视频一区| 日韩精品在线观看一区| 日韩久久免费视频| 不卡av电影院| 91在线观看免费观看| 日韩视频在线一区| 久久精品久久精品亚洲人| 亚洲精品日韩久久久| 中文字幕亚洲专区| 亲爱的老师9免费观看全集电视剧| 欧美二区在线播放| 国产精品com| 97超级碰碰人国产在线观看| 亚洲自拍另类欧美丝袜| 亚洲成人久久一区| 亚洲精品一区在线观看香蕉| 美女视频黄免费的亚洲男人天堂| 日韩在线欧美在线| 欧美日本高清视频| 黄色91在线观看| 97久久精品人人澡人人爽缅北| 97av在线视频免费播放| 中文字幕在线观看日韩| 在线精品91av| 国产精品久久久久久久午夜| 九九热精品视频| 国产91精品最新在线播放| 日韩中文字幕在线| 色多多国产成人永久免费网站| 日韩精品一区二区视频| 国产精品男人爽免费视频1| 国产精品一区二区3区| 久久精品91久久久久久再现| 国产日韩中文字幕在线| 欧美富婆性猛交| 久久香蕉精品香蕉| 91午夜理伦私人影院| 欧美成人手机在线| 欧美精品xxx| 国内精品一区二区三区| 日韩视频永久免费观看| 欧美日韩精品中文字幕| 2018日韩中文字幕| 亚洲精品久久在线| 欧美成人激情在线| 亚洲国产精彩中文乱码av在线播放| 成人免费大片黄在线播放| 亚洲精品电影网在线观看| 久久久久久久久久久国产| 在线观看日韩欧美| 日本精品久久中文字幕佐佐木| 日本精品久久久久久久| 日韩欧美国产成人| 亚洲精品日韩丝袜精品| 亚洲天堂av图片| 日本亚洲欧美成人| 国产欧美最新羞羞视频在线观看| 国产精品福利片| 久久久精品一区二区三区| 欧美日韩国产区| 国产精品日本精品| 精品自在线视频| 欧美成人在线影院| 久久精品国产清自在天天线| 久久久国产精品一区| 日韩精品一区二区三区第95| 日韩av中文在线| 成人在线国产精品| 日本午夜在线亚洲.国产| 狠狠干狠狠久久| 欧美日韩国产丝袜美女| 福利一区福利二区微拍刺激| 日韩av在线不卡| 高清欧美一区二区三区| 精品久久久久久久中文字幕| 国产女人精品视频| 久久这里有精品| 日韩成人在线免费观看| 在线观看国产成人av片| 日本aⅴ大伊香蕉精品视频| 日韩欧美高清在线视频| 国产日韩精品一区二区| 超碰97人人做人人爱少妇| 中文字幕日韩欧美| 久久综合88中文色鬼| 国产va免费精品高清在线观看| 久久视频在线播放| 91视频88av| 综合网日日天干夜夜久久| 国内揄拍国内精品少妇国语| 欧美性视频精品| 91亚洲精品一区二区| 国产精品高潮呻吟视频| 欧美在线视频网| 国产在线播放91| 538国产精品一区二区免费视频| 久久精品国产成人精品| 亚洲护士老师的毛茸茸最新章节| 97久久久免费福利网址| 国产亚洲精品一区二555| 久久香蕉国产线看观看av| 国产自产女人91一区在线观看| 在线观看精品国产视频| 日韩av在线网站| 日本久久中文字幕| 国产一区二区三区在线免费观看| 成人免费视频97| 亚洲精品99久久久久| 亚洲精品视频中文字幕| 亚洲欧美综合图区| 亚洲一区二区免费| www.日韩免费| 亚洲精品之草原avav久久| 亚洲国产高清高潮精品美女| 国内揄拍国内精品| 欧美高清视频在线播放| 色婷婷**av毛片一区| 亚洲大胆人体av| 欧美一乱一性一交一视频| 精品自在线视频| 国产日韩欧美自拍| 久久成人国产精品| 在线观看日韩av| 久久久精品影院| 欧美亚洲一区在线| 精品中文字幕在线2019| 国产一区二区在线播放| 亚洲香蕉成视频在线观看| 日韩av123| 久久久久久久久91|