- 浏览: 658345 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (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 845文件上传几乎是每个项目实现的一个必须的模块。 上传就是将 ... -
struts2拦截器使用(用户session失效后的统一页面指向)
2012-01-12 14:59 981用户登录之后session我们设置一定的时间失效,失效后 ... -
struts2防页面刷新重复提交
2012-01-12 14:41 898struts2防页面刷新重复提 ... -
Struts 2 Actions介绍
2010-07-22 17:11 987当客户端请求与action的name相匹配时,框架会使用str ... -
Struts.xml关键的配置
2010-07-22 17:10 917包含配置 默认的情况下,Struts2将自动加载放在WEB-I ... -
Struts2中struts.xml的Action配置详解
2010-07-22 17:00 793使用package可以将逻辑上相关的一组Action,Re ... -
Struts2中struts.xml的Action配置详解
2010-07-22 16:58 1234使用package可以将逻辑上相关的一组Action,Resu ... -
Struts2:处理一个form多个submit
2010-07-22 16:57 851了完成不同的工作,一个 HTML form 标签中可能有两个或 ... -
struts2 action 配置 action应用原理
2010-07-22 16:55 1004Action 的配置是 Struts2 框架的一个基础工作单元 ... -
struts2动态action的实现
2010-07-22 16:45 1000是管理者的用户登录的时候,执行完了认证需要的loginacti ... -
Struts2教程4:使用validate方法验证数据
2010-07-21 11:40 1399在《Struts2教程4:使用validate方法验证数据》中 ...
相关推荐
这个“struts2验证框架示例”提供了深入理解并实际操作Struts2验证功能的机会。 首先,让我们了解一下Struts2验证框架的基本概念。验证框架基于两个主要组件:Validation拦截器和Action类中的验证配置。Validation...
在深入探讨Struts2验证框架参数之前,我们首先简要回顾一下Struts2框架本身。Struts2是基于MVC(Model-View-Controller)设计模式的Java Web应用框架,它提供了一种灵活的方式来构建可扩展的企业级Web应用程序。...
Struts2 验证框架详解 Struts2 验证框架是基于 Java 语言的 Web 应用程序框架,提供了一个强大的验证机制,以确保用户输入的数据满足业务逻辑的要求。在 Struts2 中,验证机制是通过 validator 来实现的,该机制...
"Apache+Struts2验证"这个话题涉及到的是针对Apache Struts2框架的安全漏洞检测,特别是S2-053漏洞。 S2-053漏洞全称为"Struts2 REST Plugin远程代码执行",是Apache Struts2框架中的一个严重安全缺陷。该漏洞主要...
在Struts2中,验证框架是处理用户输入验证的关键部分,它确保了从客户端接收到的数据的质量和准确性。本示例将深入探讨Struts2验证框架的基本用法,特别适合初学者理解和掌握。 ### 一、Struts2验证框架概述 ...
在Struts2框架中,验证框架是其一个重要组成部分,用于确保输入数据的准确性和完整性,从而防止因无效数据导致的程序异常或错误。本实例将带你深入理解Struts2验证框架的使用,以及在实际操作中可能遇到的问题和解决...
### Struts2验证机制详解 #### 一、引言 在Web应用开发中,数据验证是确保应用程序稳定性和安全性的重要环节。Struts2框架提供了一套完善的验证机制,能够帮助开发者轻松实现对用户输入数据的有效性检查。本文将...
根据提供的文件信息,我们可以深入探讨Struts2框架中的验证机制及其操作细节。 ### Struts2框架的验证原理 Struts2框架的验证机制基于一种设计理念:类型转换与输入验证是相辅相成的过程。框架首先尝试将用户提交...
Struts2验证框架是Java开发中的一个关键组件,主要用于处理Web应用中的用户输入验证。它提供了灵活且强大的机制,确保用户提交的数据符合预期格式和业务规则。Struts2的验证框架是基于Action类和XML配置文件的,可以...
验证框架是Struts2中的一个重要组成部分,用于处理用户输入的数据验证。在这个框架中,验证逻辑与业务逻辑分离,使得代码更易于管理和扩展。 在Struts2验证框架中,主要有两种验证方式:客户端验证和服务器端验证。...
在Struts2中,数据验证是非常重要的一部分,确保用户输入的数据符合预期的格式和规则。Struts2验证配置文件用于定义这些规则,避免了在代码中进行繁琐的验证逻辑。 在给出的文件内容中,我们可以看到一个典型的...
在Struts2中,验证是处理用户输入数据的关键部分,确保数据的有效性和一致性。本实例将详细介绍如何在Struts2中实现简单的验证功能。 ### 1. Struts2验证概述 Struts2提供了一种灵活的验证机制,可以基于XML配置...
Struts2是一款基于MVC设计模式的开源Java框架,它为Web应用开发提供了丰富的功能,包括请求处理、视图渲染以及表单验证等。在Struts2中,表单验证是一项重要的功能,它确保了用户输入的数据符合预期的格式和范围,...
在Struts2中,验证框架是其核心特性之一,它负责确保用户输入的数据符合预定义的规则,从而保证数据的准确性和安全性。本文将深入探讨Struts2验证框架的使用和扩展。 1. **Struts2验证框架基础** - **Action与...
首先,"struts2验证"涉及到的是Struts2的表单验证机制。Struts2提供了两种验证方式:客户端验证和服务器端验证。客户端验证通过JavaScript在用户提交表单前检查数据,而服务器端验证确保即使绕过客户端验证也能保证...
在Struts2中,验证是一个至关重要的部分,确保用户输入的数据符合预设的规则和格式,从而提高应用的安全性和数据的准确性。本示例将深入探讨如何在Struts2中实现验证,特别是使用FormBean和XML配置进行验证。 首先...