struts2的校验一般都是在action里加一个validateXxx()做校验 ,今天看到了一个用xml配置校验的方法
xml的命名是: action名-方法名-validation.xml
比如 :BaseAction-logon-validation.xml
里边的具体内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.3//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd" >
<validators>
<field name="username">
<field-validator type="requiredstring" >
<message>用户名不能为空</message>
</field-validator>
<field-validator type="stringlength">
<param name="minLength">5</param>
<param name="maxLength">32</param>
<message>用户名长度必须在${minLength}到${maxLength}之间</message>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<message>密码不能为空</message>
</field-validator>
<field-validator type="stringlength">
<param name="minLength">6</param>
<message>密码长度必须在${minLength}位以上</message>
</field-validator>
</field>
</validators>
field name对应jsp中 textfield的name
type是校验的类型
param参数可以传一些长度 或者是正则表达式 一类的具体参数