- 浏览: 638078 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (609)
- java (139)
- 数据库 (107)
- 微信 (23)
- IT生活 (5)
- web前端 (74)
- SSH (11)
- 设计模式 (12)
- 重要资料 (11)
- 其他 (15)
- java技巧 (23)
- 服务器 (9)
- 2D/GUI (3)
- JAVA3D (2)
- ANT (5)
- Apache项目 (19)
- 数据类型 (10)
- 报表 (3)
- Collections (6)
- SQL/JDBC (15)
- 开发类 (6)
- EJB (6)
- Email (6)
- 文件读写 (2)
- 游戏 (0)
- Flex (2)
- Generic (2)
- HIbernate (12)
- I18N (5)
- Java EE (9)
- java ME (4)
- JDK 6 (8)
- JNDI/LDAP (5)
- JSP (7)
- JSTL (2)
- 正则表达式 (2)
- 安全 (2)
- Struts2 (12)
- Spring (4)
- Web服务 (10)
- Xml (1)
- JavaScript (30)
- AJAX (7)
- 验证 (4)
- 上传下载 (1)
- office办公软件 (1)
- Android (2)
- IOS (0)
- Dubbo (3)
- memcached/redis (1)
- 小程序 (1)
- 微信公众号 (0)
最新评论
-
wf_wangfeng:
怎么我用第一种方法不行呢 alert(document.rea ...
当jsp页面完全加载完成后执行一个js函数 -
Lori_Liu:
有帮助,至少可以解决了目前所遇到的问题!谢谢..
当jsp页面完全加载完成后执行一个js函数 -
starbhhc:
String actionMessage = new Stri ...
Java读取txt文件乱码 -
starbhhc:
Sev7en_jun 写道GOOD
客气,互相交流。。
javaeye论坛规则小测验(答案)--star -
Sev7en_jun:
GOOD
javaeye论坛规则小测验(答案)--star
struts2的验证和struts1的验证相对来说简单很多,注意的是在Action类的同一级目录下加一个
Action名-validation.xml文件就即可。下面是例题:
1.user.java
Java代码
package com.lxitedu.validate;
public class User {
private String name;
private String password;
private int age;
private String email;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return "User [age=" + age + ", email=" + email + ", name=" + name
+ ", password=" + password + ", sex=" + "]";
}
}
package com.lxitedu.validate;
public class User {
private String name;
private String password;
private int age;
private String email;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return "User [age=" + age + ", email=" + email + ", name=" + name
+ ", password=" + password + ", sex=" + "]";
}
}
2.Action.java
Java代码
package com.lxitedu.validate;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
public class Action extends ActionSupport implements ModelDriven<User> {
private static final long serialVersionUID = 1L;
private User user = new User();
@Override
public String execute() throws Exception {
return SUCCESS;
}
@Override
public User getModel() {
return user;
}
public String run() throws Exception {
return INPUT;
}
}
package com.lxitedu.validate;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
public class Action extends ActionSupport implements ModelDriven<User> {
private static final long serialVersionUID = 1L;
private User user = new User();
@Override
public String execute() throws Exception {
return SUCCESS;
}
@Override
public User getModel() {
return user;
}
public String run() throws Exception {
return INPUT;
}
}
3.在与Action.java的同一级目录下定义一个Action-validation.xml文件
Xml代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="name">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入名字</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{4,25})]]></param>
<message>您输入的用户名只能是字母和数组,且长度必须在4到25之间</message>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入密码</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{4,25})]]></param>
<message>您输入的密码只能是字母和数组,且长度必须在4到25之间</message>
</field-validator>
</field>
<field name="age">
<field-validator type="int">
<param name="min">1</param>
<param name="max">150</param>
<message>年龄必须在1到150之间</message>
</field-validator>
</field>
<field name="email">
<field-validator type="email">
<message>输入正确的email地址</message>
</field-validator>
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入邮箱</message>
</field-validator>
</field>
</validators>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="name">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入名字</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{4,25})]]></param>
<message>您输入的用户名只能是字母和数组,且长度必须在4到25之间</message>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入密码</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{4,25})]]></param>
<message>您输入的密码只能是字母和数组,且长度必须在4到25之间</message>
</field-validator>
</field>
<field name="age">
<field-validator type="int">
<param name="min">1</param>
<param name="max">150</param>
<message>年龄必须在1到150之间</message>
</field-validator>
</field>
<field name="email">
<field-validator type="email">
<message>输入正确的email地址</message>
</field-validator>
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入邮箱</message>
</field-validator>
</field>
</validators>
4.struts.xml
Xml代码
<action name="validate" class="com.lxitedu.validate.Action">
<result name="input">/validate.jsp</result>
<result name="success">/validate.jsp</result>
</action>
<action name="validate" class="com.lxitedu.validate.Action">
<result name="input">/validate.jsp</result>
<result name="success">/validate.jsp</result>
</action> 5.validate.jsp
Html代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<s:form action="abc/validate.action" >
<s:textfield name="name" label="姓名" />
<s:textfield name="password" label="密码"/>
<s:textfield name="age" label="年龄"/>
<s:textfield name="email" label="邮箱"/>
<s:submit/>
</s:form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<s:form action="abc/validate.action" >
<s:textfield name="name" label="姓名" />
<s:textfield name="password" label="密码"/>
<s:textfield name="age" label="年龄"/>
<s:textfield name="email" label="邮箱"/>
<s:submit/>
</s:form>
</body>
</html>
OK.这就是struts2的一个最最简单的验证过程。。。
Action名-validation.xml文件就即可。下面是例题:
1.user.java
Java代码
package com.lxitedu.validate;
public class User {
private String name;
private String password;
private int age;
private String email;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return "User [age=" + age + ", email=" + email + ", name=" + name
+ ", password=" + password + ", sex=" + "]";
}
}
package com.lxitedu.validate;
public class User {
private String name;
private String password;
private int age;
private String email;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return "User [age=" + age + ", email=" + email + ", name=" + name
+ ", password=" + password + ", sex=" + "]";
}
}
2.Action.java
Java代码
package com.lxitedu.validate;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
public class Action extends ActionSupport implements ModelDriven<User> {
private static final long serialVersionUID = 1L;
private User user = new User();
@Override
public String execute() throws Exception {
return SUCCESS;
}
@Override
public User getModel() {
return user;
}
public String run() throws Exception {
return INPUT;
}
}
package com.lxitedu.validate;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
public class Action extends ActionSupport implements ModelDriven<User> {
private static final long serialVersionUID = 1L;
private User user = new User();
@Override
public String execute() throws Exception {
return SUCCESS;
}
@Override
public User getModel() {
return user;
}
public String run() throws Exception {
return INPUT;
}
}
3.在与Action.java的同一级目录下定义一个Action-validation.xml文件
Xml代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="name">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入名字</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{4,25})]]></param>
<message>您输入的用户名只能是字母和数组,且长度必须在4到25之间</message>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入密码</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{4,25})]]></param>
<message>您输入的密码只能是字母和数组,且长度必须在4到25之间</message>
</field-validator>
</field>
<field name="age">
<field-validator type="int">
<param name="min">1</param>
<param name="max">150</param>
<message>年龄必须在1到150之间</message>
</field-validator>
</field>
<field name="email">
<field-validator type="email">
<message>输入正确的email地址</message>
</field-validator>
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入邮箱</message>
</field-validator>
</field>
</validators>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="name">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入名字</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{4,25})]]></param>
<message>您输入的用户名只能是字母和数组,且长度必须在4到25之间</message>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入密码</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{4,25})]]></param>
<message>您输入的密码只能是字母和数组,且长度必须在4到25之间</message>
</field-validator>
</field>
<field name="age">
<field-validator type="int">
<param name="min">1</param>
<param name="max">150</param>
<message>年龄必须在1到150之间</message>
</field-validator>
</field>
<field name="email">
<field-validator type="email">
<message>输入正确的email地址</message>
</field-validator>
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入邮箱</message>
</field-validator>
</field>
</validators>
4.struts.xml
Xml代码
<action name="validate" class="com.lxitedu.validate.Action">
<result name="input">/validate.jsp</result>
<result name="success">/validate.jsp</result>
</action>
<action name="validate" class="com.lxitedu.validate.Action">
<result name="input">/validate.jsp</result>
<result name="success">/validate.jsp</result>
</action> 5.validate.jsp
Html代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<s:form action="abc/validate.action" >
<s:textfield name="name" label="姓名" />
<s:textfield name="password" label="密码"/>
<s:textfield name="age" label="年龄"/>
<s:textfield name="email" label="邮箱"/>
<s:submit/>
</s:form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<s:form action="abc/validate.action" >
<s:textfield name="name" label="姓名" />
<s:textfield name="password" label="密码"/>
<s:textfield name="age" label="年龄"/>
<s:textfield name="email" label="邮箱"/>
<s:submit/>
</s:form>
</body>
</html>
OK.这就是struts2的一个最最简单的验证过程。。。
发表评论
-
struts2文件上传的采用的三种方式解析
2012-02-06 14:00 818文件上传几乎是每个项目实现的一个必须的模块。 上传就是将 ... -
struts2拦截器使用(用户session失效后的统一页面指向)
2012-01-12 14:59 968用户登录之后session我们设置一定的时间失效,失效后 ... -
struts2防页面刷新重复提交
2012-01-12 14:41 875struts2防页面刷新重复提 ... -
Struts 2 Actions介绍
2010-07-22 17:11 960当客户端请求与action的name相匹配时,框架会使用str ... -
Struts.xml关键的配置
2010-07-22 17:10 897包含配置 默认的情况下,Struts2将自动加载放在WEB-I ... -
Struts2中struts.xml的Action配置详解
2010-07-22 17:00 772使用package可以将逻辑上相关的一组Action,Re ... -
Struts2中struts.xml的Action配置详解
2010-07-22 16:58 1198使用package可以将逻辑上相关的一组Action,Resu ... -
Struts2:处理一个form多个submit
2010-07-22 16:57 836了完成不同的工作,一个 HTML form 标签中可能有两个或 ... -
struts2 action 配置 action应用原理
2010-07-22 16:55 975Action 的配置是 Struts2 框架的一个基础工作单元 ... -
struts2动态action的实现
2010-07-22 16:45 976是管理者的用户登录的时候,执行完了认证需要的loginacti ... -
Struts2教程4:使用validate方法验证数据
2010-07-21 11:40 1370在《Struts2教程4:使用validate方法验证数据》中 ...
相关推荐
struts2验证框架的一些属性和框架验证的语法
struts2的验证框架的示例代码,快速学习和使用struts2验证框架
Apache+Struts2验证工具,简单快捷的验证是否存在漏洞,安全工程师好帮手
适合初学者 struts2验证框架简单示例
struts2 验证框架,彻底简化判断页面传递过来的参数,必学内容
struts2 验证框架实例 掩饰了整个验证的过程 并讲解了一些网上没有说过的可能会遇到的错误
struts2验证 其中分为手动复写validate 和 使用框架验证
Struts2验证框架的配置及validation.xml常用的验证规则
struts2验证技术文档,配置前后台验证讲解。
传智播客的 struts2验证(xml)课件.ppt 主要讲解 xml的相关配置,数据校验的知识,不错的参考资料。
简单的实现了struts2验证,实验中的案例是使用重写方法实现的。。。
struts2验证+拦截器+国际化+下载excle文档+struts2二级联动+ongl表达试+ssh集成\部分代码, 项目下载、 部分代码 请看: http://blog.csdn.net/liangrui1988/article/details/9778787
struts2验证+拦截器+国际化+下载excle文档+struts2二级联动+ongl表达试+ssh集成.rar
使用struts2的验证模式,并在里面使用了formbean的模式。
Struts2 验证框架 validation.xml 常用的验证规则
struts2登陆验证struts2登陆验证struts2登陆验证struts2登陆验证
Strut2框架的类型转换利用了这种设计哲学.类型转换的要求是输入检验的子集.初期是重写ActionSupport类的validate方法,验证Action里的实体是否符合验证规则.