- 浏览: 188508 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (321)
- eclipse (4)
- idea (2)
- Html (8)
- Css (14)
- Javascript (8)
- Jquery (6)
- Ajax Json (4)
- Bootstrap (0)
- EasyUI (0)
- Layui (0)
- 数据结构 (0)
- Java (46)
- DesPattern (24)
- Algorithm (2)
- Jdbc (8)
- Jsp servlet (13)
- Struts2 (17)
- Hibernate (11)
- Spring (5)
- S2SH (1)
- SpringMVC (4)
- SpringBoot (11)
- WebService CXF (4)
- Poi (2)
- JFreeChart (0)
- Shiro (6)
- Lucene (5)
- ElasticSearch (0)
- JMS ActiveMQ (3)
- HttpClient (5)
- Activiti (0)
- SpringCloud (11)
- Dubbo (6)
- Docker (0)
- MySQL (27)
- Oracle (18)
- Redis (5)
- Mybatis (11)
- SSM (1)
- CentOS (10)
- Ant (2)
- Maven (4)
- Log4j (7)
- XML (5)
最新评论
1. struts2验证框架
2. struts2内置验证
3. 自定义验证
Struts2基于Struts2拦截器,为开发者提供了一套易用的验证框架,并可扩展;一般的验证都支持; 新建项目HeadFirstStruts2Chap07
2. struts2内置验证
2.1 普通字段验证; 2.2 验证表达式; <s:actionerror/>
User.java package com.andrew.model; public class User { private String userName; private String name; private int age; private String email; private String homePage; @Override public String toString() { return "User [userName=" + userName + ", name=" + name + ", age=" + age + ", email=" + email + ", homePage=" + homePage + "]"; } // getter and setter } RegisterAction.java package com.andrew.action; import com.andrew.model.User; import com.opensymphony.xwork2.ActionSupport; public class RegisterAction extends ActionSupport { private User user; public User getUser() { return user; } public void setUser(User user) { this.user = user; } @Override public String execute() throws Exception { System.out.println("传入的用户:"+user); return SUCCESS; } } RegisterAction-validation.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd"> <validators> <field name="user.userName"> <field-validator type="requiredstring"> <message>请输入用户名</message> </field-validator> <field-validator type="stringlength"> <param name="minLength">6</param> <param name="maxLength">10</param> <message>用户名必须在${minLength}和${maxLength}之间</message> </field-validator> </field> <field name="user.name"> <field-validator type="requiredstring"> <message>请输入姓名</message> </field-validator> </field> <field name="user.age"> <field-validator type="int"> <param name="min">18</param> <message>年龄必须满18周岁</message> </field-validator> </field> <field name="user.email"> <field-validator type="requiredstring"> <message>请输入邮件</message> </field-validator> <field-validator type="email"> <message>邮件格式不对</message> </field-validator> </field> <field name="user.homePage"> <field-validator type="requiredstring"> <message>请输入主页</message> </field-validator> <field-validator type="url"> <message>主页格式不对</message> </field-validator> </field> <validator type="expression"> <param name="expression"><![CDATA[!user.name.equals(user.userName)]]></param> <message>用户名和真实姓名不能相同</message> </validator> </validators> struts.xml <package name="manager" extends="struts-default"> <action name="registerAction" class="com.andrew.action.RegisterAction"> <result name="input">/register.jsp</result> <result name="success">/success.jsp</result> </action> </package> register.jsp <%@taglib prefix="s" uri="/struts-tags" %> <s:actionerror/> 用户注册 <s:form action="/registerAction" method="post"> <s:textfield name="user.userName" label="用户名"></s:textfield> <s:textfield name="user.name" label="真实姓名"></s:textfield> <s:textfield name="user.age" label="年龄"></s:textfield> <s:textfield name="user.email" label="邮件"></s:textfield> <s:textfield name="user.homePage" label="主页"></s:textfield> <s:submit value="注册"></s:submit> </s:form> success.jsp 注册成功 http://localhost:8080/HeadFirstStruts2Chap07/register.jsp
3. 自定义验证
ValidationAction.java package com.andrew.action; import com.opensymphony.xwork2.ActionSupport; public class ValidationAction extends ActionSupport { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String execute() throws Exception { System.out.println("姓名:"+name); return SUCCESS; } } ValidationAction-validation.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd"> <validators> <field name="name"> <field-validator type="requiredstring"> <message>请输入姓名</message> </field-validator> <field-validator type="sensitive"> <message>有敏感词汇</message> </field-validator> </field> </validators> SensitiveWordValidators.java package com.andrew.validators; import com.opensymphony.xwork2.validator.ValidationException; import com.opensymphony.xwork2.validator.validators.FieldValidatorSupport; public class SensitiveWordValidators extends FieldValidatorSupport { public void validate(Object object) throws ValidationException { String fieldName = this.getFieldName(); String value = this.getFieldValue(fieldName, object).toString(); if (!check(value)) { this.addFieldError(fieldName, object); } } public boolean check(String value) { String sensitiveWords[] = { "你", "大爷" }; for (int i = 0; i < sensitiveWords.length; i++) { if (value.indexOf(sensitiveWords[i]) > -1) { return false; } } return true; } } validators.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator Config 1.0//EN" "http://struts.apache.org/dtds/xwork-validator-config-1.0.dtd"> <validators> <validator name="required" class="com.opensymphony.xwork2.validator.validators.RequiredFieldValidator"/> <validator name="requiredstring" class="com.opensymphony.xwork2.validator.validators.RequiredStringValidator"/> <validator name="int" class="com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator"/> <validator name="double" class="com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator"/> <validator name="date" class="com.opensymphony.xwork2.validator.validators.DateRangeFieldValidator"/> <validator name="expression" class="com.opensymphony.xwork2.validator.validators.ExpressionValidator"/> <validator name="fieldexpression" class="com.opensymphony.xwork2.validator.validators.FieldExpressionValidator"/> <validator name="email" class="com.opensymphony.xwork2.validator.validators.EmailValidator"/> <validator name="url" class="com.opensymphony.xwork2.validator.validators.URLValidator"/> <validator name="visitor" class="com.opensymphony.xwork2.validator.validators.VisitorFieldValidator"/> <validator name="conversion" class="com.opensymphony.xwork2.validator.validators.ConversionErrorFieldValidator"/> <validator name="stringlength" class="com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator"/> <validator name="regex" class="com.opensymphony.xwork2.validator.validators.RegexFieldValidator"/> <validator name="conditionalvisitor" class="com.opensymphony.xwork2.validator.validators.ConditionalVisitorFieldValidator"/> <validator name="sensitive" class="com.andrew.validators.SensitiveWordValidators"/> </validators> struts.xml <package name="manager" extends="struts-default"> <action name="validationAction" class="com.andrew.action.ValidationAction"> <result name="input">/validation.jsp</result> <result name="success">/success.jsp</result> </action> </package> validation.jsp <%@taglib prefix="s" uri="/struts-tags" %> 简单自定义验证 <s:form action="/validationAction" method="post"> <s:textfield name="name" label="姓名"></s:textfield> <s:submit value="提交"></s:submit> </s:form> success.jsp 注册成功 http://localhost:8080/HeadFirstStruts2Chap07/validation.jsp
发表评论
-
struts2防重复提交
2019-01-14 08:55 3541. struts2防重复提交 Student.java ... -
struts2文件上传和下载
2019-01-12 16:10 3101. struts2文件上传和下载 1) Struts2 ... -
struts2国际化
2019-01-12 16:10 3971. struts2国际化 网上转码: http://too ... -
struts2标签
2019-01-12 16:10 4481. struts2标签 Struts2自己封装 ... -
struts2值栈与OGNL
2019-01-12 16:10 4541. struts2值栈简介 值栈是对应每个请求对象的一 ... -
struts2拦截器
2019-01-11 09:07 3491. struts2拦截器简介 拦截器简介 Strut ... -
struts2配置result
2019-01-11 09:07 4381. struts2配置result 新建项目HeadF ... -
struts2分模块与action生命周期
2019-01-11 09:07 3531. 分模块 struts.xml <inclu ... -
struts2使用通配符与动态方法调用
2019-01-11 09:06 3891. 使用通配符 新建项目HeadFirstStruts ... -
struts2配置struts.xml
2019-01-11 09:06 3891. struts2配置struts.xml 1 ... -
struts2处理传入多个值
2019-01-10 09:17 3981. struts2处理传入多个值 新建项目HeadFi ... -
struts2属性驱动与模型驱动
2019-01-10 09:17 3841. struts2属性驱动与模型驱动 user.jav ... -
struts2引入ActionSupport
2019-01-10 09:16 4201. struts2引入ActionSupport He ... -
struts2自动获取设置数据
2019-01-10 09:16 4001. struts2自动获取设置数据 新建项目HeadF ... -
struts2简介
2019-01-10 09:16 4641. struts2简介 官网:http://struts. ... -
Java struts2 Jar包
2018-09-03 19:17 6691. Java struts2 Jar包下载地址 http: ...
相关推荐
这个“struts2验证框架示例”提供了深入理解并实际操作Struts2验证功能的机会。 首先,让我们了解一下Struts2验证框架的基本概念。验证框架基于两个主要组件:Validation拦截器和Action类中的验证配置。Validation...
在Struts2中,验证框架是处理用户输入验证的关键部分,它确保了从客户端接收到的数据的质量和准确性。本示例将深入探讨Struts2验证框架的基本用法,特别适合初学者理解和掌握。 ### 一、Struts2验证框架概述 ...
在Struts2框架中,验证框架是其一个重要组成部分,用于确保输入数据的准确性和完整性,从而防止因无效数据导致的程序异常或错误。本实例将带你深入理解Struts2验证框架的使用,以及在实际操作中可能遇到的问题和解决...
Struts2验证框架是Java开发中的一个关键组件,主要用于处理Web应用中的用户输入验证。它提供了灵活且强大的机制,确保用户提交的数据符合预期格式和业务规则。Struts2的验证框架是基于Action类和XML配置文件的,可以...
验证框架是Struts2中的一个重要组成部分,用于处理用户输入的数据验证。在这个框架中,验证逻辑与业务逻辑分离,使得代码更易于管理和扩展。 在Struts2验证框架中,主要有两种验证方式:客户端验证和服务器端验证。...
在深入探讨Struts2验证框架参数之前,我们首先简要回顾一下Struts2框架本身。Struts2是基于MVC(Model-View-Controller)设计模式的Java Web应用框架,它提供了一种灵活的方式来构建可扩展的企业级Web应用程序。...
在Struts2中,验证框架是其核心特性之一,它负责确保用户输入的数据符合预定义的规则,从而保证数据的准确性和安全性。本文将深入探讨Struts2验证框架的使用和扩展。 1. **Struts2验证框架基础** - **Action与...
在Struts2的2.3.15.3版本中,集成的验证框架是其核心功能之一,帮助开发者确保用户输入的数据质量和安全性。本篇将详细讲解如何在Struts2中实现一个简单的验证框架模式。 首先,我们需要了解Struts2验证框架的基本...
本篇将详细介绍Struts2的极速表单验证框架,特别是其注解方式的使用。 ### 1. 表单验证的重要性 在Web应用程序中,验证用户输入的数据是必不可少的,因为不正确的数据可能导致业务逻辑错误,甚至安全漏洞。Struts2...
### Struts2 最全验证框架知识点详解 #### 一、Struts2 验证框架概述 Struts2 是一个基于MVC模式的Java Web开发框架,它提供了丰富的功能来简化Web应用的开发过程。其中,Struts2的验证框架是其重要的组成部分之一...
用户名、密码、年龄、电话号、email、日期验证、合法链接 的验证例子。
首先,Struts验证框架的配置涉及到两个关键的JAR包:`struts2-core.jar` 和 `struts2-validation-plugin.jar`。`struts2-core.jar` 是Struts2框架的核心库,包含了Struts2的基础功能;而`struts2-validation-plugin....
在Struts1中,验证框架是处理用户输入数据校验的重要组成部分,它帮助开发者确保用户提交的数据符合预定义的规则,从而提高应用程序的安全性和用户体验。下面将详细介绍Struts1验证框架的使用。 首先,我们来看一下...
Struts7验证框架是用于Java Web开发中的一个关键组件,主要负责处理用户输入数据的验证。这个框架在学习和实际项目开发中具有广泛的应用,因为它能够有效地提高代码的可维护性和减少开发工作量。 传统的Struts框架...
在Struts2中,验证框架是处理用户输入数据的有效性和完整性的关键组件。本篇文章将深入探讨如何在Struts2中使用验证框架,并通过一个简单的例子来演示其工作原理。 ### 一、Struts2验证框架概述 Struts2的验证框架...
#### 三、Struts2验证框架概述 Struts2框架内置了一套强大的验证系统,它基于WebWork验证框架进行扩展和优化。该验证系统支持前端和后端验证,并且可以通过XML配置文件或注解的方式定义验证规则。下面将具体介绍如何...