XML的简单使用的一些事项(了解即可)

I. 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'?>
  	 <根标签>
   	 <子标签>
	     <name></name>
	     <age></age>
	     <gender></gender>
	  </英雄>
	  </根标签>

II. XML的约束(dtd和schema) 了解

1、基础组成部分

	  A.文档声明(写在XML代码的第一行)
	  B.指令(了解:结合css的)
	  C.标签(标签名称自定义的)
	  D.属性(标签上面定义的等于号的值)
	  E.文本(CDATA区,原样展示)
	  F.注释( <!--和HTML注释相同-->)

2、约束

	  A.含义: 
	 	  规定XML文档的书写规范
	 	  ("因为XML文档的标签是可以任意写的,后期XML需要交给指定的框架去解析,如果随便写,解析失败")
	  B.常见的两个约束
	 	  a. DTD 约束
	 	  b. Schema 约束

3、DTD 约束

  A.外部引入(本地)  
	  <!DOCTYPE 根标签名 SYSTEM "dtd文件的位置">
  B.外部引入(网络)
 	  <!DOCTYPE 根标签名 PUBLIC "dtd文件名字" "dtd文件的位置URL">
  C.代码位置
	   写在文档声明的下面一行.根标签的上面一行.(文档声明和根标签中间)

4、Schema 约束

 A.例如:
	 <students   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	 xmlns="http://www.itcast.cn/xml"
	 xsi:schemaLocation="http://www.itcast.cn/xml  student.xsd">

II.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<JXNode> jxNodes = jxDocument.selN("//student"); //解析指定格式的标签
   b.位置
	    w3cschool -> XML -> Xpath语法

猜你喜欢

转载自blog.csdn.net/LIDIADIA/article/details/82807547