struts里面的方法校验
一、全局方法检验
1、校验输入界面
<body> <s:property value="fieldErrors.usernameError[0]"/> <s:property value="fieldErrors.passwordError[0]" /> <form action="validate_save"> 姓名:<input type="text" name="username" value="" ><br/> 密码:<input type="password" name="password" value="" ><br/> <input type="submit" value="提交"> </form> </body>
2、struts.xml里面action配置
<struts> <package name="main" namespace="/" extends="struts-default"> <action name="validate_*" class="com.edu.hpu.action.ValidateAction" method="{1}"> <result>/WEB-INF/validate/validate_{1}.jsp</result> <result name="input">/WEB-INF/validate/validate_input.jsp</result> </action> </package> </struts>
3、ValidateAction(当输入不符合请求的时候,validate()方法会返回INPUT)
package com.edu.hpu.action; import com.opensymphony.xwork2.ActionSupport; public class ValidateAction extends ActionSupport { private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String save() { return SUCCESS; } public String input() { return INPUT; } /** * 重写validate()方法,进行全局校验 */ @Override public void validate() { if(username == null || username.trim().equals("")) { this.addFieldError("usernameError", "用户名为空"); } else if(password == null || password.trim().equals("")) { this.addFieldError("passwordError", "密码为空"); } } }
二、局部方法检验规则(注意命名规则)
/** * 局部方法校验: * 命名规则: * validateSave:validate(固定写法) + Save(要检验的方法名) */ public void validateSave() { if(username == null || username.trim().equals("")) { this.addFieldError("usernameError", "用户名为空"); } else if(password == null || password.trim().equals("")) { this.addFieldError("passwordError", "密码为空"); } }
相关推荐
是学习框架的时候,自己做的,虽然不是很复杂,但有成就感,里面用到了JSTL的应用,Commons-validate.jar校验功能的实现,感觉挺好的.
一个完整的struts2的实例,将一些常用的struts2技术整合在里面,包括类型转换,国际化,数据校验等
里面有struts2的国际化例子,还有struts2校验框架例子,还有freemarker结合struts2的例子,还有一个volicity和struts2对比的例子(引张荣华的一部分'作者言明要标注,所以特此写明')还有自己写的以部分!对了里面...
本例主要是实现了struts2+spring3+hibernate3的 基本框架搭建的注册登录,以及用户增删改查,适于初学者学习。 包括:注册 登录功能 分页的实现 前端校验 验证码的实现 注册时有ajax 校验,登录时 后台从数据库...
struts2的基本入门,里面包含了struts2开发中常用的基本技术
struts2+spring2.5+hibernate3.2做的还有登陆DWR校验 导入项目后,会报错,导入jar包即可。 struts2+spring2.5+hibernate3.2+dwr+MySQL驱动包 把上述包导了就没错了。 打包有个user.txt为数据库导出的,你导入...
这是我自己做的练习,包括这三个框架集成,文件上传,下载,输入校验, 验证,里面还包括所需的全部jar包
使用DTD或Schema校验XML。从XML生成DTD或Schema。与其它编辑器相比最大不同之处在 于,Rinzo能够与Java elements结合在一起。你可以打开一个类的定义,自动完成类名,从XML声明创建类。这将非常有用假如你要编辑web....
Struts2.1+spring2.5+hibernate3.2+oracle+ecside(table组件)+快逸报表+js校验,包太大,可以看压缩包里面的图片加上即可
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48 71、说出一些常用的类,包,接口,请各举5个 49 72、java中有...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48 71、说出一些常用的类,包,接口,请各举5个 49 72、java中有...
11、写js校验——myjs文件夹下。 12、写好action对应的JSP "/dangdang/user/login!form.do" /项目名/namespace/action的请求!action里的方法 相对路径的写法 <%@taglib uri="/struts-tags" prefix="s"%> ;...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 71、说出一些常用的类,包,接口,请各举5个 72、java中有几种...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48 71、说出一些常用的类,包,接口,请各举5个 49 72、java中有...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48 71、说出一些常用的类,包,接口,请各举5个 49 72、java中有...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48 71、说出一些常用的类,包,接口,请各举5个 49 72、java中有...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48 71、说出一些常用的类,包,接口,请各举5个 49 72、java中...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 52 71、说出一些常用的类,包,接口,请各举5个 54 72、java中有...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48 71、说出一些常用的类,包,接口,请各举5个 49 72、java中有...