Spring-Validator 的主要意图是为 Spring MVC 提供简洁、可配置的,实现类似于Struts的验证机制,提高 Spring 的开发效率。
-
主要功能是:
使用配制文件,
1. 提供 Spring 客户端验证机制;
2. 提供 Spring 服务器端通用的可配置的验证;
如果大家有兴趣,请到 http://sourceforge.net/projects/js-validation/ 下载,里边有例子,建议大家先看看例子(或者看struts-validator的那个例子也可以,效果差不多)。
下边,我将具体说明
1. 客户端的使用
2. 服务器端的使用
由于配置文件和struts中相同,且struts是如此的流行、广泛,所以不说配制文件的编写了,请查看struts的相关资料(只需修改使用dist下的validator-rules.xml、validation.xml即可)
1. 客户端的使用
原理呢,就是通过读取配制,在JSP页面中生成相应的javascript,然后点击submit的时候,Alert出相应的信息(虽然很多人讨厌这种方式,但这是最快最直接应用最广的方式,P:个人感觉,没有数据依据)。
具体的过程呢,当然先是开发页面和程序,然后想到要加入验证机制,如姓名不能为空,生日必须是 yyyy-mm-dd等,还强烈的想看到客户在提交后被弹出对话框吓一跳,那么,我们开始吧,嘿嘿
首先,配置先行了,在validation.xml中声明需要验证的form。
其次,在 -servlet.xml中,声明apachValidatorResolvers
xml 代码
- <bean id="apachValidatorResolvers"
- class="com.avidmouse.validator.ApachValidatorResolvers">
- <property name="pathnames">
- <value>validator-rules.xml,validation.xml</value>
- </property>
- </bean>
bean的id不一定非叫 apachValidatorResolvers,看自己习惯了。它用途是初始化配置,需要指定validator-rules.xml,validation.xml的位置,由于犯懒,同时也为了显示它的用途,没有提供默认值。
然后,声明 javascriptValidator
<bean class="com.avidmouse.validator.jsvalidator.JavascriptValidatorApach" id="javascriptValidator"></bean>
同样,id不做要求。它的主要是为生成所需的javascript,提供给taglib或者interceptor或者其他。
最后,就是JSP的修改了。
加入对验证taglib的声明
<!---->
在适当的位置(form后边),加入taglib引用
<vld:validate page="0" validationname="registrationForm"></vld:validate>
page 默认值是0,所以page="0"可以省略
2. 服务器端的使用
原理呢,实现org.springframework.validation.Validator,提供一个通用的validator。
具体过程,和客户端的差不多,在需要添加验证时
首先,在validation.xml中声明需要验证的form。
其次,在 -servlet.xml中,声明apachValidatorResolvers
xml 代码
- <bean id="apachValidatorResolvers"
- class="com.avidmouse.validator.ApachValidatorResolvers">
- <property name="pathnames">
- <value>validator-rules.xml,validation.xml</value>
- </property>
- </bean>
然后,为需要进行验证的form声明一个验证bean
xml 代码
- <bean id="registrationValidator"
- class="com.avidmouse.validator.commons.ApachValidator">
- <property name="apachValidatorResolvers">
- <ref local="apachValidatorResolvers" />
- </property>
- <property name="formClass">
- <value>
- com.avidmouse.validator.simple.bus.RegistrationForm
- </value>
- </property>
- <property name="validatorName">
- <value>RegistrationForm</value>
- </property>
- <property name="page">
- <value>0</value>
- </property>
- </bean>
formClass就是SimpleFormController的commandClass
validatorName就是在配制中声明的form名称
page 默认值是0,如果是0 ,可以不声明。
最后,声明需要验证的bean的validator为上一步声明的bean
xml 代码
- <bean id="registration"
- class="com.avidmouse.validator.simple.web.RegFormController">
- <property name="sessionForm">
- <value>true</value>
- </property>
- <property name="commandClass">
- <value>
- com.avidmouse.validator.simple.bus.RegistrationForm
- </value>
- </property>
- <property name="validator">
- <ref bean="registrationValidator" />
- </property>
- <property name="formView">
- <value>registration</value>
- </property>
- <property name="successView">
- <value>regInfo</value>
- </property>
- </bean>
分享到:
- 2006-08-22 10:57
- 浏览 7827
- 评论(1)
- 论坛回复 / 浏览 (0 / 5014)
- 查看更多
相关推荐
在给定的压缩包中,`JSON Schema 校验库——json-schema-validator(java版本).pdf`可能是该库的使用指南或API文档,可以帮助开发者深入理解如何在Java项目中有效利用`json-schema-validator`进行JSON数据验证。...
6. 集成其他框架:Hibernate Validator可以方便地与Spring、JSF等框架集成,实现无缝验证。 在压缩包`hibernate-validator-5.2.4.Final`中,你可能会找到以下组件: 1. `jar`文件:这是Hibernate Validator的核心库...
在实际应用中,Apache Commons Validator 可以与Spring框架等其他组件集成,以实现更高级别的数据验证。例如,可以将其与Spring MVC结合,以便在控制器层自动执行验证,避免了在业务逻辑中处理验证细节。 总的来说...
在实际应用中, Commons Validator通常与其他Java EE框架如Struts、Spring等集成,用于Web表单验证,确保应用程序的数据一致性。此外,由于其良好的可扩展性和灵活性,它也被广泛应用于服务端数据处理、后台逻辑验证...
包含了4.1.0.Final版本的API文档,开发者可以通过查阅这个文档了解各个类和方法的功能,快速学习和使用Hibernate Validator。 5. **.jar文件**: `hibernate-validator-4.1.0.Final.jar`是核心库,包含了所有验证...
- Hibernate Validator可以轻松与Spring、JSF、CDI等框架集成,提供无缝的数据验证支持。 11. **性能优化**: - Hibernate Validator提供了缓存机制,提高重复验证的效率。 12. **JSR 380的增强**: - 从JSR ...
验证、数据绑定和类型转换章节可能详细说明了如何在Spring框架中实现验证,例如使用Spring的Validator接口。此外,还可能涵盖了Spring类型转换和字段格式化的实现,包括如何配置全局的日期和时间格式。 Spring...
为了深入了解这些概念,你可以阅读Spring Boot和Bean Validation的官方文档,探索odelay项目的源码,以及研究延时队列和定时任务的实现原理。这样不仅可以提升你的编程技能,还能帮助你更好地理解和应用这些技术。
6. **与Spring和其他框架的集成**:Hibernate Validator可以无缝集成到Spring框架中,也可以与其他Java EE应用服务器配合使用。 7. **编程式验证**:除了基于注解的方式,文档还介绍了如何通过API进行编程式的验证...
`common-validator V1.0 API.rar`提供了详细的API文档,包括类结构、方法、属性和事件的说明,是开发者使用和扩展验证器的重要参考。 综上所述,`common-validator`是一款强大的JavaScript验证解决方案,它通过其...
### Spring Framework 4 参考文档关键知识点概览 #### 一、Spring Framework 总览 **1. 开始** - **Spring Framework**:一个轻量级且全面的Java应用开发框架,提供了完整的解决方案来简化企业级应用程序的开发...
当控制器接收到请求后,Spring会自动调用Hibernate Validator来执行验证,如果数据不合法,将会抛出异常并返回相应的错误信息。 此外,Hibernate Validator还支持分组验证,通过定义不同的验证组,可以在不同的业务...
- 集成Hibernate Validator到Spring或EJB项目中,了解如何配置和使用验证器。 - 学习如何创建和使用自定义验证注解,以满足更复杂的业务需求。 - 熟悉错误处理机制,如何优雅地展示验证失败的信息给用户。 7. **...
在实际开发中,`hibernate-validator-5.4.1.Final.zip`这个压缩包解压后,除了包含验证库的JAR文件外,还可能有相关的文档、源代码和示例,供开发者学习和参考。通过深入理解和使用Hibernate Validator,开发者可以...
GitHub-fge json-schema-validator 2.2.8 杰克逊-json-参考核心0.3.0 快速开始 mvn package java -jar target/spring-boot-restful-api-1.0-SNAPSHOT.jar 将浏览器指向 curl -X POST -d '{ "customerid": ...
与Spring框架的无缝集成,允许在Spring MVC中直接使用Hibernate Validator进行表单验证,简化了控制器的代码。 六、性能优化 4.2.0.Final版本对性能进行了优化,提升了大规模验证场景下的效率,并且增加了对CDI...
Spring的验证模块允许开发者使用Validator接口对模型进行数据验证,它能够将代码解析为错误信息。BeanWrapper提供了操纵和操作bean属性的工具,而类型转换系统则支持将数据从一种类型转换为另一种类型。 Spring ...
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们各自负责应用程序的不同层面:Struts2处理MVC模式中的视图和控制器,Spring提供依赖注入(DI)和面向切面编程(AOP),而Hibernate则负责对象关系映射...
在集成方面,Hibernate Validator与Spring、JSF等框架有很好的兼容性。它可以无缝地与这些框架结合,为Web应用提供强大的验证支持。在Spring中,我们可以利用AOP(面向切面编程)来实现全局的验证处理,提高代码复用...
6. **文档说明**:提供详细的使用指南和示例,帮助其他开发者了解如何引入和使用你的Starter。 关于数据验证,它在软件开发中扮演着至关重要的角色,确保了输入数据的正确性和一致性。Spring Boot提供了JSR-303/JSR...