public class Demo02Junit {
@Test
public void method() {
System.out.println("method...");
}
}
xml
1默认命名空间:<xxx xmlns=””>,使用<标签>
2显式命名空间:<xxx xmlns:别名=””>,使用<别名:标签>
3转义字符。 例如:“<”、“>”、“’”、“””、“&”。
4<!DOCTYPE beans **SYSTEM** "bean.dtd">
SYSTEM:系统,当前使用的dtd约束文档来源于本地的操作系统
5<!ELEMENT 元素名 符号和数据类型>
元素命名: 不能使用空格,不能使用冒号:,不建议以XML、xml、Xml开头
beans、bean、property、import
常见符号: ?:代表元素只能出现0次或者1次 *表示任意 +:代表元素至少出现1次 1次或者多次
():一组元素 |:选择关系 在多个中选择一个 张三|李四 ,指定顺序
*(?和+): 代表元素可以出现任意次 0次,1次,多次
:顺序关系 a,b,c 元素书写顺序只能先写a,在写b,最后写c
常见类型:#PCDATA 表示内容是文本,不能是子标签
6格式化良好的XML文档,必须只有一个根元素
7<!ELEMENT beans (bean*,import*) >
<!ELEMENT bean (property*)>
<!ELEMENT property (#PCDATA)>
<!ELEMENT import (#PCDATA)>
(bean*,import*) 代表元素内容为多个bean元素、多个import元素
其中 bean* :代表bean元素允许出现0次或多次
其中 import* :代表import元素允许出现0次或多次
(property*): 代表元素内容为 多个property元素
其中 property*:代表property元素允许出现0次或多次
(#PCDATA):代表元素内容为 文本
PCDATA,指的是可被解析的字符数据(Parsed Character Data)
当某个 XML 元素被解析时,其标签之间的文本也会被解析
<message>此文本也会被解析</message>
8属性attribute <bean id="" className="">
<!ATTLIST 元素名称 属性名称 属性类型 默认值>: 声明一个属性
元素名称bean 属性名称:id、className、type 属性类型:CDATA
CDATA 指的是不应由 XML 解析器进行解析的文本数据
格式:<![CDATA[原样输出的数据]]>
当属性没有赋值时,使用默认值
#REQUIRED,属性值是必需填写的
#IMPLIED,属性不是必需的, 可以不编写
#FIXED value,属性值是固定的,为指定的value值
属性类型:ID、CDATA…
ID : 唯一性,不能重复,必须有,只能以字母开头
CDATA:文本类型,字符串
属性必须出现在元素的开始标签中
属性的定义格式:属性名=属性名="属性值",其中属性值必须双引
一个元素可以有0~N个属性,但一个元素中不能出现同名属性
属性名不能使用空格、冒号等特殊字符,且必须以字母开头
属性可以写多个,之间用空格隔开,没有顺序上的要求
同一个标签中,属性名不能重复
子标签的出场顺序 <choice>选择()sequence>顺序 <all>任意minOccurs:最少出现次数
maxOccurs:最大出现次数,unbounded:不限制(没有边)
use:设置属性使用 optional:可选 required:必须
<!ATTLIST bean id CDATA #REQUIRED className CDATA #REQUIRED type CDATA #IMPLIED>
<!ATTLIST property name CDATA #REQUIRED value CDATA #REQUIRED>
<!ATTLIST import resource CDATA #REQUIRED>
targetNamespace="http://www.itheima.com/bean" 命名空间的值是唯一的,不可重复
<!-- 通过xmlns指定xsd文件的约束文件位置 -->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.itcast.cn/bean"//公司域名
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://www.itcast.cn/bean"
elementFormDefault="qualified">
<!-- 声明根标签 -->
<element name="beans">
<!-- complexType 复杂的类型,代表里面有子元素 -->
<complexType>
子标签的出场顺序 <choice>选择()sequence>顺序 <all>任意minOccurs:最少出现次数
maxOccurs:最大出现次数,unbounded:不限制(没有边)
<!--
<choice> 规定可出现某个子元素或者可出现另外一个子元素(非此即彼):
<minOccurs> 规定某个元素能够出现的最小次数
<maxOccurs> 规定某个元素可出现的最大次数
如需使某个元素的出现次数不受限制,请使用 maxOccurs="unbounded" 这个声明
-->
<choice minOccurs="0" maxOccurs="unbounded">
<element name="bean">
<complexType>
<sequence minOccurs="0" maxOccurs="unbounded">
<element name="property">
<complexType>
<attribute name="name" use="required"></attribute>
<attribute name="value" use="required"></attribute>
</complexType>
</element>
</sequence>
<attribute name="id" use="required"></attribute>
<attribute name="className" use="required"></attribute>
</complexType>
</element>
</schema>