SpringMVC 之 DTD 约束
SpringMVC 之 DTD 约束
简介
设计模式 :
它是用来解决现实中出现的一类问题
框架的由来:
就是由多种设计模式配合形成的,特定的框架处理特定问题
XML
传输数据、做配置
<students>
<student>
<name></name>
<age></age>
</student>
<student>
<name></name>
<age></age>
</student>
</students>
什么是格式良好XML ?
-
1.1 有且只有一个根元素
-
1.2 XML标签大小写正确区分
-
1.3 正确使用结束标签
-
1.4 正确嵌套标签
-
1.5 使用了合法的标签名
-
1.6 定义有效的属性
<?xml version="1.0" encoding="UTF-8"?>
<persons><!-- 根元素 -->
<person pid="p1" sex="男" qq="aaa" parent="p2">
<name>张小明</name>
<age>10</age>
<contact>
<phone>1234567</phone>
</contact>
<br/>
</person>
<person pid="p2">
<name>张大明</name>
<age>35</age>
<contact>
<email>123@qq.com</email>
</contact>
</person>
</persons>
2、DTD声明与元素定义的语法、分类、限制
<?xml version="1.0" encoding="UTF-8"?>
<!--
在XML加入DTD声明
<!DOCTYPE root[]>
元素定义的语法:
<!ELEMENT element-name (type)>
注:根标签也要定义!!!
元素的分类:
<!ELEMENT element-name EMPTY> //空元素
<!ELEMENT element-name (#PCDATA)> //文本元素
<!ELEMENT element-name (e1,e2)> //混合元素
元素的限制
, 分割
| 或者
次数:
+ 1 或 1个以上
* 0 或 0个以上
? 0 或 1
-->
<!DOCTYPE persons [
<!ELEMENT persons (person*)>
<!ELEMENT person (name,age,contact,br?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT contact (phone|email)>
<!ELEMENT phone (#PCDATA)>
<!ELEMENT br EMPTY>
<!ELEMENT email (#PCDATA)>
]>
<persons>
<person>
<name>张小明</name>
<age>10</age>
<contact>
<phone>1234567</phone>
</contact>
<br/>
</person>
<person>
<name>张大明</name>
<age>35</age>
<contact>
<email>123@qq.com</email>
</contact>
</person>
</persons>
3、XML 中的特殊符号
&(逻辑与) &
<(小于) <
>(大于) >
"(双引号) "
'(单引号) '
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE persons PUBLIC "//UNKNOWN/" "unknown.dtd">
<!--
属性定义的语法:
<!ATTLIST element-name
att_name type
>
attribute
ID
(男|女)
CDATA
IDREF
reference
#REQUIRED/#IMPLIED
XML中的特殊符号:
& (逻辑与) &
< (小于) <
> (大于) >
" " (双引号) "
' ' (单引号) '
-->
<!-- 定义元素 -->
<!DOCTYPE persons [
<!ELEMENT persons (person*)>
<!ELEMENT person (name,age,contact,br?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT contact (phone|email)>
<!ELEMENT phone (#PCDATA)>
<!ELEMENT br EMPTY>
<!ELEMENT email (#PCDATA)>
<!ATTLIST person
pid ID #REQUIRED
sex (男|女) '男'
qq #CDATA #IMPLIED
parent IDREF #IMPLIED
>
]>
<persons>
<person pid="p1" sex="男" qq="aaa" parent="p2">
<name>张小明</name>
<age>10</age>
<contact>
<phone>1234567</phone>
</contact>
<br/>
</person>
<person pid="p2">
<name>张大明</name>
<age>35</age>
<contact>
<email>123@qq.com</email>
</contact>
</person>
</persons>
如果大家有何高见,欢迎评论 哦 !O(∩_∩)O