Java Web学习,掌握JSP、Servlet、Cookie、Session等内容,使用JSTL进行数据展示完成实际应用。
2.3.1 XML基础
XML的用途、语法规则、语义约束、如何解析XML,以及XPath表达式等内容。
内容:
XML是什么?
XML与HTML的比较:
XML的用途:
配置文件是在项目启动过程中,根据配置项加载对应的文件内容,执行相应的代码。
XML文档结构:
ISO8859-1不支持中文。
XML标签书写规则:
1.
3.
4.
XML支持五种实体引用;
CDATA标签:
5.有序的子元素:
XML语义约束:
规定XML文档中允许出现的节点及数量、属性。
<!ATTLIST>中的employee是标签名,no是属性名,CDATA是子节点类型名称,””代表属性默认值.
一般来讲纯文本节点就是没有子节点。
DTD定义节点数量:
XML引用DTD文件:
SYSTEM是本地加载dtd文件的意思。
dtd文件建议和xml文件同名。
dtd文件,节点与之后的括号之间需要添加空格,这个是dtd文件的规定,否则无法生效。
XML Schema:
Schema文件以.xsd结尾,第一个声明根节点,包含子节点的时候必须要有 属性带数据类型,
complexType 标签的含义是复杂的节点,包含子节点时必须使用这个标签,sequence 下面的节点必须按顺序排序,minOccurs 属性可以设置标签出现的最少次数,maxOccurs 属性可以设置标签出现的最多次数,标签 simpleType 设置限制(设置数据范围)
<simpleType>
<restriction base="integer">
<minInclusive value="18"></minInclusive>
<maxInclusive value="100"></maxInclusive>
</restriction>
</sippleType>
<schema xmlns="http://www.w3.org/2001/XMLSchema">Schema文件加上属性xmlns后边属性xml文件会报错。
常用的数据类型有string integer 在element 标签中设置type属性,
加入标签的属性 <attribute name=”no" type=”string” use="required"></attribute>
引入在根节点开头的位置 <hr xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xx.xsd">xx代表的是引入Schema 文件的名字。
<!-- complexType标签含义是复杂节点,包含子节点时必须使用这个标签 -->
<!-- sequence标签含义是序列,保持有序 -->
<xx xmlns="http://www.w3school.com.cn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xx.xsd">1、xmlns其实是XML Namespace的缩写,表示名称空间.2、xmlns:xsi表示使用xsi作为前缀的Namespace,当然前缀xsi需要在文档中声明。3、xsi:noNamespaceSchemaLocatio其实是Namespace为http://www.w3.org/2001/XMLSchema-instance里的noNamespaceSchemaLocatio属性.
DOM文档对象模型:
DOM4J:
XML DOM与HTML DOM的关系:DOM 是定义了访问 HTML 和 XML 文档的标准:“W3C 文档对象模型 (DOM) 是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。”W3C DOM 标准被分为 3 个不同的部分:1. 核心 DOM - 针对任何结构化文档的标准模型。 2. XML DOM - 针对 XML 文档的标准模型(XML DOM 定义了所有 XML 元素的对象和属性,以及访问它们的方法)。 3. HTML DOM - 针对 HTML 文档的标准模型(HTML DOM 定义了所有 HTML 元素的对象和属性,以及访问它们的方法)。
Eclipse中java主方法的快捷生成方法(main然后Alt+”/”).
//在内存中更新DOM树后,要想写入xml文件,需要:
Writer writer=new OutputStreamWriter(new FileOutputStream(file),“UTF-8”);//创建输出流
document.write(writer);
writer.close();关闭输出流
XPath路径表达式:
XPath谓语表达式:
是使用“@type”无法选取任何元素,“@”是选择属性的语法,必须配合选择元素的语法来使用,“//”是从匹配选择的当前节点选择文档中的节点,当配合“@”时,“//@type”才能选择所有含