XML:css
一、概念:Extensible Markup Language 可擴展標記語言。網絡
* 可擴展:標籤是自定義的。dom
二、功能:存儲數據 : * 配置文件 。 * 在網絡中傳輸。工具
三、語法:xml
* 基本語法:一、後綴名:.xml 對象
二、第一行必須寫文檔聲明:事件
三、xml文檔中有且僅有一個根標籤。內存
四、屬性值必須用引號引發來。文檔
五、標籤必須正確關閉。get
六、標籤區分大小寫。
* 組成部分:一、文檔聲明 <?xml version='1.0' ?>
屬性列表:version(必須) encoding standalone (yes,no)
二、命名規則:
三、屬性:id屬性值惟一。
四、文本:CDATA
* 約束 :規定xml文檔的書寫規則。
* 分類:一、DTD:一種簡單的約束技術
二、Schema:一種複雜的約束技術
* DTD使用:一、引入文檔:* 內部dtd:將約束定義在xml文檔中 (不經常使用)
* 外部dtd:約束定義在外部dtd文件中:
一、本地 <! DOCTYPE 根標籤名 SYSTEM 「文件位置」>
二、網絡<! DOCTYPE 根標籤名 PUBLIC 「URL」>
*Schema使用:更復雜,能夠限制更多的東西,好比屬性取值範圍.
3,解析:將xml文檔中的數據讀取到內存中 .
* 方式: 1. DOM:將標記語言文檔一次性加載到內存中,在內存中造成一顆DOM樹
* 優勢:操做方便,能夠對文檔進行CRUD操做 * 缺點: 佔內存.
2. SAX :逐行讀取,基於事件驅動. 優勢: 不佔內存 缺點 :只能讀取 不能修改.
* 常看法析器: 1.JAXP:sun的. 較差
2. DOM4J: 優秀的解析器
3. Jsoup:
* Jsoup 的使用:
1. 快速入門: * 導包 *獲取Document對象 *獲取對應標籤Element對象 * 獲取數據.
2.對象的使用:
* Jsoup:工具類,能夠解析文檔,返回Document.
parse:解析文檔,返回Document: parse(File in ,String charseName)
* Document:文檔對象.表明內存中的dom樹.
getElementByTag() 根據標籤名回去元素集合.ByAttribute ByAttributeValue
* Elements:元素Element對象的集合 ArrayList
* Element:元素對象
1.獲取子元素對象 getElementBy.....
2.獲取屬性值:attr(String key) 根據屬性名稱獲取屬性值
3.獲取文本內容 String text()
* Node: 節點對象
二、快捷查詢方式:
* selector:選擇器 使用方法:Element select(String cssQuery)經過文檔寫查詢語法。
* XPath:用來肯定XML某部分的語言。使用Jsoup的xpath須要另外導包,而後查詢w3c來寫查詢。