validator 验证框架
六种类的关系:
1:普通form(从下向上继承)
ActionForm //不用验证框架作验证
|
|
validatorForm //使用验证框架时必须继承它,但只能做同一种验证(即只提交一个按键时的验证)
|
|
validatorActionForm //使用验证框架验证时,可以更为精确的去处理业务逻辑,针对的是不同的按键的path(即可以作不同的验证,如,既可以验证是否为空,又可以同时验证是否小于几位)
2:动态form(从下向上继承)
DynaActionForm
|
|
DynaValidatorForm
|
|
DynaValidatorActionForm
我们自己的form 必须继承validatorForm 或validatorActionForm 或DynavalidatorForm 或DynavalidatorActionForm
对于 validatorForm 和DynavalidatorForm 是针对form的验证
对于 validatorActionForm 和DynavalidatorActionForm 是针对path的验证
validator验证框架的使用(服务器端):
1.创建form,继承validatorForm 或validatorActionForm 或DynavalidatorForm 或DynavalidatorActionForm
××务必把form中的validate()方法去掉
2:在struts-config.xml文件中 注册validator验证框架(在validator-rules.xml有以下内容,不要求手写)
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
/WEB-INF/validation.xml"/>
</plug-in>
3:在validation.xml文件中指定哪个form的哪些属性做什么验证
<form name="logForm">//对于validatorForm 和DynavalidatorForm 是form的逻辑名,对于 validatorActionForm 和DynavalidatorActionForm 是path的内容
<field
property="name"//要验证的属性
depends="required,mask,minlength">//做哪些验证,mask指定必须为几位
<arg0 key="label.name"/>
<arg1 name="minlength" key="${var:minlength}" resource="false"/>//设置错误信息
<var>
<var-name>mask</var-name>
<var-value>^[a-zA-Z]*$</var-value>//用正则表达式表示只能是字符
</var>
<var>
<var-name>minlength</var-name>//最小长度
<var-value>7</var-value>
</var>
</field>
<field
property="date"
depends="required,date">//日期的验证
<arg0 key="label.date"/>
</field>
</form>
4:在applicationResource.properties文件中加上错误信息
//验证框架用的信息,可以用中文转化
errors.required={0} is required.
errors.minlength={0} can not be less than {1} characters.
errors.maxlength={0} can not be greater than {1} characters.
errors.invalid={0} is invalid.
errors.byte={0} must be a byte.
errors.short={0} must be a short.
errors.integer={0} must be an integer.
errors.long={0} must be a long.
errors.float={0} must be a float.
errors.double={0} must be a double.
errors.date={0} is not a date.
errors.range={0} is not in the range {1} through {2}.
errors.creditcard={0} is an invalid credit card number.
errors.email={0} is an invalid e-mail address.
//自己用到的信息
label.name=name
label.password=password
label.phone=phone
label.email =email
注意:运行前检查一下validation.xml和applicationResource.properties文件文件有没有部署到tomcat下
validator验证框架的使用(客户端):
前4步是一样的。
在jsp页面加上<html:javascript formName="logForm"/>,onsubmit="return validateLogForm(this)"
<html:form action="/log" focus="uname" onsubmit="return validateLogForm(this)"> //服务器自动生成的javascript函数名
email : <html:text property="email"/><html:errors property="email"/><br/>
uname : <html:text property="uname"/><html:errors property="uname"/><br/>
<html:submit/><html:cancel/>
</html:form>
<html:javascript formName="logForm"/>//formName相应的form名
分享到:
相关推荐
本学习笔记主要探讨了Struts2中的校验器(Validator)和校验框架,帮助开发者理解如何有效地实现数据验证,确保应用程序的健壮性。 首先,我们来看Struts2的校验框架。这个框架提供了强大的功能,可以对用户输入...
本讲主要探讨Struts2的校验框架,它提供了对用户输入数据进行验证的功能,确保数据的有效性和安全性。 在传统的MVC模式中,数据验证通常在控制器或模型层进行,但在Struts2中,校验逻辑被移到了专门的校验框架中,...
Struts2的校验框架通过提供声明式和编程式的验证方式,使得数据验证变得更为简洁和灵活。 1. **声明式验证**:在Action类中,我们可以使用注解来定义字段的验证规则。例如,`@RequiredFieldValidator`用于检查字段...
【SpringMVC+Mybatis学习笔记】 SpringMVC和Mybatis是Java开发中常见的两个框架,它们分别负责Web层和持久层的管理。SpringMVC是Spring框架的一部分,提供了强大的模型-视图-控制器(MVC)架构模式,用于构建高性能...
这篇学习笔记和测试源代码着重探讨了如何使用XML配置来实现对Action中特定方法的输入验证。 在Struts2中,输入验证是一个关键的环节,它确保用户提交的数据符合应用程序的要求,防止非法或无效数据进入系统。Struts...
在尚硅谷的2022年学习笔记中,可能包含了以下实战内容: - **HelloWorld示例**:创建一个简单的Controller,处理GET请求,返回“Hello, World!”。 - **模型数据传递**:演示如何将模型数据绑定到视图,并在页面上...
Java学习笔记涵盖了多个核心的Java开发技术,包括Spring、Hibernate和Struts,这些都是Java Web开发中的重要框架。让我们深入探讨一下这些技术。 首先,Java是一种广泛使用的编程语言,以其跨平台性和面向对象的...
08 Struts_08DynaValidatorForm : Struts框架的Validator验证框架 09 Struts_09Token : Structs的令牌机制,避免重复提交问题 10 Struts_10SmartUpload : structs的文件上传 11 Struts_11Internationalize : Structs...
Struts2是一个强大的Java web框架,它为开发者提供了构建MVC(模型-视图-控制器)应用程序的强大工具。在第六讲中,我们将深入探讨Struts2的输入验证机制,这是确保应用程序数据安全性和正确性的重要环节。Struts2的...
总的来说,这份"SpringMVC学习笔记+学习源码.zip"资源涵盖了SpringMVC的基本概念、配置、控制器、数据绑定、异常处理、视图解析等多个方面的内容,对于初学者和有一定经验的开发者都是很好的学习资料。通过深入学习...
这个“springmvc学习笔记.zip”文件很可能包含了关于如何理解和使用SpringMVC的详细教程或个人学习记录。以下是一些核心知识点的详细说明: 1. **MVC架构**:MVC是一种设计模式,将应用程序分为三个主要组件:模型...
通过`@FieldValidator`和`@Validations`注解,可以在Action类中声明字段级和类级的验证规则。如果验证失败,Struts2会自动处理错误并展示给用户。 总的来说,Struts2的Action模型提供了更高级别的抽象,简化了业务...
在Struts2的学习过程中,第五讲主要探讨的是输入验证,这是确保应用程序数据安全和准确性的关键步骤。输入验证通常发生在客户端和服务器端,防止恶意数据的提交,并确保用户输入的数据符合预设的格式和规则。 首先...
**Spring MVC 学习笔记** Spring MVC 是 Spring 框架的一个模块,专门用于构建 Web 应用程序。它提供了一种模型-视图-控制器(Model-View-Controller)架构,帮助开发者处理请求、控制应用程序流程,并实现业务逻辑...
在深入探讨Struts2的学习笔记之前,先来理解它的核心概念。 **1. Struts2依赖的JAR包** Struts2的运行离不开一系列的依赖库,包括: - `struts2-core-2.1.6.jar`:这是Struts2的核心库,包含了Struts2框架的主要...
Struts是Java Web开发中的一款经典MVC框架,由Apache...以上是对Struts学习笔记的简要概括,深入学习Struts,不仅可以提升Web开发技能,还能更好地理解MVC模式以及框架的设计思想,对后续学习其他Web框架也会有所帮助。