要使用 validate验证 action类必须要继承ActionSupport类
该action 将会继承ActionSupport的相关功能 validate验证则是其一
访问action 继承ActionSupport的类 会自动访问validate()方法, 验证错误会返回input属性
如果一个action中处理多个请求,可以用validateXxx()方法 执行的顺序为 validateXxx()-validate()-xxx() validateXxx()(Xxx)第一个字母必须大写
在action方法中重写validate方法,给field字段添加了错误消息,哪怕是空字符串的错误消息,都会让validate方法后续的方法终止调用。
代码:
public void validate(){
if(判断条件){
this.addFieldError("对应属性",“错误提示消息”);
}
}
jsp页面使用struts标签库添加如下代码:
<s:fielderror></s:fielderror>
action处理多个请求
public String test(){
return "success";
}
pubilc void validateTest(){
if(判断条件){
this.addFieldError("对应属性",“错误提示消息”);
}
public void validate(){
if(判断条件){
this.addFieldError("对应属性",“错误提示消息”);
}
}
进入该acion时会先访问 validateTest() 之后 validate() 最后才访问Test();
Struts推荐采用配置文件的方式进行数据校验
action类必须要继承ActionSupport类
在action 类 相同的包下,写一个 类名+validation.xml文件
访问该action类时会自动加载该文件
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">
//验证字符串是否为空
<field name="属性名">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>用户名必填</message>
</field>
查找系统提供的校验规则。xwork-core-xxx.jar包的
com.opensymphony.xwork2.validator.validators包中有一个default.xml文件。里面就是jar包提供的校验规则
-