1. 程式人生 > >MY DAY 【10】

MY DAY 【10】

#【溫故知新】 ##XML的概述和快速入門 ####1、XML概述 A.功能 a.儲存資料 b.網路傳輸 B.HTML和XML的區別: a.標籤(XML是自定義,HTML是預定義) b.語法(XML語法校驗嚴格,HTML語法校驗鬆散) c.功能(XML用於儲存資料,HTML用於展示資料) ####2、快速入門 A.基礎語法: a.檔案的字尾是 xml b.文件宣告必須在第一行 c.根標籤只能有一個 d.區分大小寫

B.入門的程式碼

     	<?xml version='1.0'?>
		<!--ctrl+/ 註釋-->
	  <heros>
		<hero>
    	<name id="1">小明</name>
    	<age>14</age>
		</hero>
		<hero>
    	<name id="2">小紅</name>
    	<age>12</age>
		</hero>
		</heros>

##XML的約束(dtd和schema) 瞭解 ####1、基礎組成部分 A.文件宣告(寫在XML程式碼的第一行) B.指令(瞭解:結合css的) C.標籤(標籤名稱自定義的) D.屬性(標籤上面定義的等於號的值) E.文字(CDATA區,原樣展示) F.註釋(和HTML註釋相同) ####2、約束 A.含義: 規定XML文件的書寫規範 (“因為XML文件的標籤是可以任意寫的,後期XML需要交給指定的框架去解析,如果隨便寫,解析失敗”) B.要求: a.學會引入 約束文件 b.學會簡單讀一下約束文件 C.常見的兩個約束 a. DTD 約束 b. Schema 約束 ####3、DTD 約束 A.外部引入(本地) B.外部引入(網路) C.程式碼位置 寫在文件宣告的下面一行.根標籤的上面一行.(文件宣告和根標籤中間) ####4、Schema 約束 A.例如: ##XML的解析 Jsoup ####1、常見的兩種解析思想 A. DOM a.原理: 把整個文件一次性全部載入的到記憶體當中,形成DOM樹,可以進行"增,刪,改,查"操作 b.優缺點: 優點: 可以進行增刪改查 缺點: 佔記憶體,容易出現記憶體溢位 B. SAX a.原理: 逐行讀取資料,採用事件監聽機制. b.優缺點: 優點: 不佔記憶體,無論文件多大,都可以讀取 缺點: 只能讀,不能 增刪改 “寫” ####2、常見的解析器 A. JAXP : sun公司的(使用不多) B. Dom4j : 底層是 DOM 解析(可以進行增刪改查) C. Jsoup : 底層是 DOM 解析(可以進行增刪改查) D. Pull : 底層是 SAX 解析(只能進行讀取) ####3、常用的API (jsoup-1.11.2-javadoc -> index.html -> FRAMES -> org.jsoup -> Jsoup) A. Jsoup 工具類 a. static Document parse(String html) b. static Document parse​(File in, String charsetName) c. static Document parse​(URL url, int timeoutMillis) B. Document 類 a. Element getElementById​(String id) b. Elements getElementsByTag​(String tagName) c. Elements getElementsByAttribute​(String key) d. Elements getElementsByAttributeValue​(String key, String value) C. Element 類 a. String attr​(String attributeKey) b. String text​() c. String html​() ####4、常用API(解析HTML語法) A.選擇器 a.方法 Elements select​(String cssQuery) b.位置 Class Element -> select​方法 -> See Also: Selector B.作用 對應有些HTML檔案,層級結構比較複雜的情況,可以使用選擇器 ####5、常用API(解析HTML語法) A.選擇器 Xpath (需要匯入jar包"xpath"和"jsoup") a.方法 JXDocument jxDocument = new JXDocument(document); //獲取物件 List jxNodes = jxDocument.selN("//student"); //解析指定格式的標籤 b.位置 w3cschool -> XML -> Xpath語法