为了减少Java代码中的校验我们先定义Action配置
的文件的校验文件(snails-actions-validate.xsd
),文件路径请看框架总说明中的图片所示。
snails-actions-validate.xsd
下面的schema
文件既是格式校验文件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.w3schools.com" xmlns="http://www.w3schools.com" elementFormDefault="qualified">
<xs:element name="actions"> <xs:complexType> <xs:sequence maxOccurs="unbounded"> <xs:element name="action"> <xs:complexType> <xs:sequence maxOccurs="unbounded"> <xs:element name="result"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="name" type="xs:string" use="required" /> <xs:attribute name="redirect" use="optional" default="false"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="true" /> <xs:enumeration value="false" /> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> </xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" /> <xs:attribute name="class" type="xs:string" use="required" /> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element>
</xs:schema>
|
标签的解释请看注释信息或者看下面的参考网址:
- http://www.w3chtml.com/schema/xml-schema-root.html
- http://www.cnblogs.com/caoxch/archive/2006/11/17/563856.html
- https://www.ibm.com/developerworks/cn/xml/x-cert/part6/
snails-actions.xml
得到校验文件后,开始编写Action配置文件
,我们可以先写一个用户登录Action的配置。
1 2 3 4 5 6 7 8 9 10
| <?xml version="1.0" encoding="UTF-8"?> <actions xmlns="http://www.w3schools.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3schools.com snails-actions-validate.xsd">
<action name="login" class="com.snails.action.LoginAction"> <result name="success">success.jsp</result> <result name="fail" redirect="true">fail.jsp</result> </action> </actions>
|
注意头部的xsi:schemaLocation="http://www.w3schools.com snails-actions-validate.xsd
,这里引入了校验文件,此时两个xml都是在同一个目录下。
到此两个主要的配置文件已经定义完成,下面就是解析xml文件了。
项目完整代码请看MyMVC,欢迎fork学习,如果你觉得对你有帮助给我点个赞吧,当然也欢迎给我提意见(email:1527254027@qq.com,chendequanroob@gmail.com)。