JavaEE_XML语言
XML标记语言:
示例:
<?xml version="1.0" encoding="UTF-8"?>
<book>
<car>BWM</car>
<code name="code1" type='txt'>
<![CDATA[select * from users where id < 10;]]>
</code>
</book>
1.概念
xml是可扩展的标记语言,标签都是自定义的,可以使用中文作标签名。
2.功能:
1.存储数据,当做小型数据库使用
2.传输数据,用io流把xml文件传递客户端,客户端从里面提取数据
3.配置文件。如:JavaEE应用中WEB-INF/web.xml文件
3.html与xml区别:
1.html语法松散,xml语法严格
2.html做页面展示,xml做数据存储
3.html所有标签都是预定义的,xml所有标签都是自定义的
4.xml语法:
4.1文档声明:
<?xml version="1.0" encoding="UTF-8"?>
* 必须写在xml文档的第一行。
* 写法:<?xml version="1.0" ?>
* 属性:
* version:版本号 固定值 1.0
* encoding:指定文档的码表。
注意:文档声明前不要有空行,空格,注释
4.2 元素/标签/节点
* 文档中必须有且只能有一个根元素
* 元素需要正确闭合。<body></body>
* 如果标签无文本的话,可以简写,如<a/>
* 元素需要正确嵌套
* 元素名称要遵守:
* 元素名称区分大小写
* 数字不能开头
* 元素名称做到见名知意,
4.3 文本:
* 转义字符:>
* CDATA: 里边的数据会原样显示
* <![CDATA[ 数据内容 ]]>
4.4 属性:
* 属性值必须用引号引起来。单双引号都行。不同的属性用空格隔开
4.5 注释:
给程序员看,XML解析器忽略
不能嵌套 !
<!--注释的内容-->
4.6 5_CDATA字符数据段/区(代码段)
让XML不按照XML本身的语法来约束,即不将 < 符合看作是标签的一个部份,而就不报错了
4.7 转义字符
用特殊的字符替代XML中敏感的内容
<==< less than
>==> greater than
4.8 处理指令
结合CSS技术,可以读取XML文件的内容,并显示在浏览器
xml的文档结构图
5.xml约束
- 约束就是xml的书写规则,让书写规范
XML的约束模式
用于约束XML如何书写的一种技术,这个技术就叫约束模式
约束模式有二个大类别:
1-DTD,易学易用,采用DTD语法,功能有限
2-Schema,相对难学难用,采用XML语法,功能强大
5.1 DTD:
DTD不能独立存在,必须嵌入到XML中才有效
嵌入方式有二大类
1_内部方式:DTD和XML在同一个XML文件中
2_外部方式:DTD和XML在不同的文件中,一个在XML中,一个在DTD中,最后通过<!DOCTYPE语句嵌入在一起
-------01:引用外部本地的DTD,即DTD文件就在你的PC上
<!DOCTYPE 根标签 SYSTEM "DTD文件的路径">
-------02:引用外部远程的DTD,即DTD文件不在你的PC上
<!DOCTYPE 根标签 PUBLIC "DTD名称" "DTD文件的路径">
如:html4这个版本,所有html4程序员,都要遵循loose.dtd这个约束规则
<!ELEMENT元素定义
<!ATTLIST属性定义
<!ENTITY实体定义,就是用一个普通的变量,代替一个文本字符串
5.2 schema:
Schema
Schema,相对难学难用,采用XML语法,功能强大
将来spring框架,struts2框架,都采用Schema来约束XML文件
2016/12/2