XML
可擴展標記語言(Extensive Markup Language),標簽中的元素名是可以自己隨意寫,可拓展是相對于html來說
標記語言:由一對尖括號括起來<內容>,就稱為標記,標簽;代碼都是由標簽組成,就稱為標記語言
作用
- 用來當做組態檔
- xml的組態檔和properties的組態檔的選用:
- 如果配置的是單項資料,使用properties
- 如果配置的是多項資料,使用xml
語法
檔案后綴
.xml
檔案宣告
version 是版本的意思, encoding 是編碼集
<?xml version='1.0' encoding='utf-8'?>
注釋
<!-- 注釋 -->
標簽
1、xml檔案中有且只有一個根標簽
2、標簽中可以定義屬性,在給屬性賦值的時候,值要用引號括起來(單雙都可)
3、標簽名區分大小寫
4、標簽的閉合
<aaa></aaa>有頭有尾<bbb/>自閉和
5、標簽名的命名規則
- 可以由數字,字母,一些符號來組成
- 開頭不能是數字和標點符號
- 標簽名中不能有空格
- 如:
<aa a></aa a>
- 如:
- 標簽名不能是xml或者XML
- 如:
<xml></xml>
- 如:
XML約束
DTD約束
檔案型別定義
內部引入
<!DOCTYPE books[
<!ELEMENT books (book+)>
<!ELEMENT book (name,price)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT price (#PCDATA)>
]>
<books>
<book>
<name>三國</name>
<price>386</price>
</book>
<book>
<name>水滸</name>
<price>400</price>
</book>
</books>
外部引入(本地)
dtd檔案:books.dtd
<!ELEMENT books (book+)>
<!ELEMENT book (name,price)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT price (#PCDATA)>
引入
<!DOCTYPE books SYSTEM "books.dtd">
外部引入(網路)
<!DOCTYPE books PUBLIC "DTD名稱" "DTD檔案的URL">
XML決議
DOM決議
就是指先將xml檔案一次性的加載進記憶體中,在記憶體中形成一個樹狀結構(dom樹)
優點:我們可以通過dom方式的決議,對xml檔案中的資料進行增刪改查
缺點:如果樹太大了,非常占記憶體空間
SAX決議
Simple APIs for XML(簡單應用程式介面)
基于事件處理的,逐行掃描,逐行加載,
優點:逐行掃描,讀取一行,加載一行,加載完就扔了,不占用記憶體空間
缺點:執行程序不可逆,不能對資料進行增刪改操作,只能進行查詢操作,不能回頭了
JDOM決議
DOM4j決議
public static void main(String[] args) throws DocumentException {
SAXReader saxReader = new SAXReader();
//決議XML檔案、獲取樹物件
Document doc = saxReader.read(new File("java20210519/src/study/books.xml"));
//獲取根標簽物件
Element root = doc.getRootElement();
//獲取根元素下的子元素物件集合
List<Element> list = root.elements();
for (Element element : list){
//獲取該元素下的子元素name
Element name = element.element("name");
//獲取該元素下的子元素price
Element price = element.element("price");
//獲取name、price元素的文本資訊
System.out.println("名稱:" + name.getText() + ",價格:" + price.getText());
}
}
常用API
Element物件
// 獲取所有的子標簽
List<Element> elements();
// 獲取元素的名字
String getName();
// 獲取標簽內的文本內容
String getText();
// 根據標簽名獲取指定第一個標簽物件
Element element(String name);
// 根據屬性名獲取屬性值
String attributeValue(String name);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/499540.html
標籤:jQuery
上一篇:初學者對html的認知
下一篇:JS:資訊錄入系統
