struts2 验证框架
来源:互联网 发布:浦口行知基地气温 编辑:程序博客网 时间:2024/06/05 01:56
验证框架:
Validate
第一种方式:继承actionsupport类重写validate()方法:表示提交到此action所有请求都会执行验证。
Eg:
publicclassLoginAction extends ActionSupport{
private Stringname;
private Stringpass;
public String testognl()throws Exception {
System.out.println("login");
System.out.println(name+":"+pass);
return"success";
}
public String execute(){
System.out.println("execute");
System.out.println(name+":"+pass);
return"success";
}
@Override
publicvoid validate() {
if(!(name!=null&&name.length()>0)){
this.addFieldError("nameempty","name isempty");
}
if(!(pass!=null&&pass.length()>0)){
this.addFieldError("passempty","pass isempty");
}
}
}
修改struts.xml 文件
<actionname="login"class="com.etc.web.LoginAction">
<result>/pages/login-success.jsp</result>
<resultname="input">/index.jsp</result><!--有验证时必须加上此result -->
<resultname="error">/pages/login-error.jsp</result>
</action>
页面:
<s:formaction="login"namespace="/">
<s:textfieldname="name"label="姓名" />
<s:fielderrorcssStyle="color:red;"fieldName="nameempty"/><br>
<hr>
<s:textfieldname="pass"label="密码"/>
<s:fielderrorcssStyle="color:red;"fieldName="passempty"/>
<s:submit/>
</s:form>
第二种:单独为某个方法添加验证(validate+大写首字母的方法名称),页面和struts.xml和第一种方式一致。
Eg:
publicclassLoginAction extends ActionSupport{
private Stringname;
private Stringpass;
public String testognl()throws Exception {
System.out.println("login");
System.out.println(name+":"+pass);
return"success";
}
public String execute(){
System.out.println("execute");
System.out.println(name+":"+pass);
return"success";
}
publicvoid validateTestognl() {
if(!(name!=null&&name.length()>0)){
this.addFieldError("nameempty","name isempty");
}
if(!(pass!=null&&pass.length()>0)){
this.addFieldError("passempty","pass isempty");
}
}
}
Validation:
第一种:新建一个xml文件,名称:action类名-validation.xml:(xml文件必须和action类在同一个目录下,提交到此action所有请求都会执行验证。)
Eg:
<!DOCTYPEvalidators PUBLIC
"-//Apache Struts//XWork Validator1.0.2//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">
<validators>
<fieldname="name">
<field-validatortype="requiredstring">
<message>姓名不能为空</message>
</field-validator>
</field>
<fieldname="name">
<field-validatortype="stringlength">
<paramname="trim">true</param>
<paramname="minLength">3</param>
<paramname="maxLength">8</param>
<message>姓名必须为3-8位的字符</message>
</field-validator>
</field>
<fieldname="pass">
<field-validatortype="requiredstring">
<message>必须输入密码</message>
</field-validator>
</field>
</validators>
Struts.xml文件的action配置中必须具备 name=”input”这样的一个结果。
第二种方式:
新建一个xml文件,名称:action类名-action单个请求方法的别名-validation.xml:(xml文件必须和action类在同一个目录下,提交到此action所有请求都会执行验证。)
Struts.xml
<actionname="login1"class="com.etc.web.LoginAction"method="testognl">
<result>/pages/login-success.jsp</result>
<resultname="input">/index.jsp</result>
<resultname="error">/pages/login-error.jsp</result>
</action>
Xml命名:LoginAction-login1-validation.xml:表示执行LoginAction中testognl方法时执行验证。
- struts2 validate(struts2 验证框架)
- Struts2 验证框架-前台验证
- Struts2验证(框架验证)
- Struts2 中的验证框架
- 关于struts2验证框架
- struts2.x 验证框架
- struts2的验证框架
- struts2 自动验证框架
- struts2的框架验证
- struts2 的验证框架
- struts2验证框架小结
- Struts2验证框架
- Struts2的验证框架
- struts2的验证框架
- struts2 验证框架、国际化
- struts2的框架验证 .
- Struts2之验证框架
- struts2验证框架
- 一个乘法口诀表
- WAMP环境搭建
- 考试系统——C#反射机制+工厂模式+缓存机制遇到问题
- LeetCode Gas Station 两个特性,两种方法完美解答-更新证明方法
- MFC 复制到剪切板 粘贴出来中文乱码 解决方法
- struts2 验证框架
- Facelets: Setter not found for property class
- c语言结构体用法
- Hibernate的get与load的区别
- php:Forbidden You don’t have permission to access / on this server.
- JSP基础(一)JSP介绍
- 简单的IPv6 UDP/TCP socket编程 -- 两台Linux实现简单的ipv6通信
- JSP基础(二)JSP语法概述
- 一篇英文论文引起的思考