原文:
http://www.programgo.com/article/12411299733/
参考:
spring(3) mvc 注解验证springmodules common validator (注解验证) http://blog.csdn.net/zheng963/article/details/48681057
实战springmodules common validator
http://blog.csdn.net/sunxing007/article/details/4660262
1.使用spring-modules-validation.jar ,
2.并且引入commons-validator.jar及相关的包,
3.一个标准的validator-rules.xml文件,和自定义的validation.xml文件,
4. 在*-servlet.xml中加入:
<!-- 表单验证管理 -->
<bean id="beanValidator"
class="org.springmodules.validation.commons.DefaultBeanValidator">
<property name="validatorFactory" ref="validatorFactory" />
</bean>
<bean id="validatorFactory"
class="org.springmodules.validation.commons.DefaultValidatorFactory">
<property name="validationConfigLocations">
<list>
<value>WEB-INF/validator-rules.xml</value>
<value>WEB-INF/validation.xml</value>
</list>
</property>
</bean>
5. 在验证表单的处理参数中加入:
@ModelAttribute("user") User user, BindingResult bindingResult
6. 在处理提交内容前加入:
validator.validate(jituanmk, bindingResult);
表单验证的例子:
首先配置好上述的1-4的内容,然后在表单的处理方法中,作如下处理:
@RequestMapping("/userUpdate")
public String processJituanmkUpdate(@ModelAttribute("user") User user, BindingResult bindingResult, //此处加入验证对象,注意这两个参数必须紧挨着,以方便spring框架绑定
Model model ) throws IOException {
validator.validate(user, bindingResult);//使用validator.xml验证表单对象
if (bindingResult.hasErrors()) { //发生错误,把错误信息输出回表单页
logger.error(bindingResult.getFieldErrors());
model.addAttribute("errors", bindingResult.getFieldErrors());
return "userModify";
}
... //没有错误,继续处理
validaton.xml的编写与在struts中一致,需要注意的是:
<form name="user"> 中的name值是首字母小写的验证对象的类名。这个如果写错了,当然就得不到正确的验证结果。
spring-2.5+springmodules-0.9 ,测试通过。
其他验证方案,
1.可以使用@InitBinder注解绑定数据,参考资料2中详述,在spring发布包中的samples中的petclinic。
2.可以使用实现spring提供的Validator接口来处理。
或许还有其他方案,不过感觉对于平常的应用,使用validator.xml是最方便的,毕竟至少不需要写那么多用于验证的代码。
参考:
1.
http://www.ibm.com/developerworks/cn/java/j-lo-spring25-mvc/
2.
http://www.infoq.com/cn/articles/spring-2.5-ii-spring-mvc
分享到:
相关推荐
5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 5.4.2.1. 注册用户自定义的PropertyEditor ...
10. `commons-validator.jar`:提供了校验框架,用于表单验证。 11. `ezmorph.jar`:对象转换库,用于数据类型的转换。 12. `dwr.jar`:直接Web远程调用框架,支持AJAX远程调用。 这些Jar包的组合使用,使得SSH框架...
- `commons-validator.jar`:Apache Commons Validator提供表单验证功能。 这些库在Java项目中扮演着重要角色,比如在处理HTTP请求、数据转换、对象建模、集合操作等方面。在与jqGrid集成时,可能会用到这些库来...
- Hibernate相关的jar:hibernate-core, hibernate-entitymanager, hibernate-validator等,用于ORM和数据验证。 - Spring相关的jar:spring-context, spring-web, spring-aop, spring-jdbc, spring-orm等,提供DI、...
这可以通过自定义的`Validator`实现,或者使用Spring的`Validator`接口配合自定义规则。 最后,前端部分通常会使用编辑器组件(如CKEditor、TinyMCE等)来实现用户界面。这些编辑器允许用户选择本地文件并将其上传...
10. **hibernate-validator.jar**:提供了JSR-303/JSR-349验证规范的实现,用于校验入参和对象属性。 导入这些依赖后,开发者可以方便地使用SpringMVC提供的注解(如@Controller、@RequestMapping、@Service、@...
5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 6. 使用Spring进行面向切面编程(AOP...
13. **commons-validator.jar**(如果使用Struts验证框架):提供了表单验证的工具和实现。 在Tomcat 5.5环境下,为了使Struts能够正常工作,需要将上述jar包复制到Tomcat的`lib`目录下,或者直接在应用的`WEB-INF/...
Struts 是一个经典的Java Web开发框架,用于构建可维护、结构清晰且易于扩展的企业级应用程序。...在实际项目中,还可以结合使用Spring Validation或Apache Commons Validator等库,进一步增强验证功能。
5. `commons-validator.jar`:Apache Commons Validator,提供表单验证功能,可以自定义验证规则。 6. `xalan.jar`、`xercesImpl.jar`、`xml-apis.jar`:XML解析相关的库,用于处理XML文档。 三、Struts1.2工作原理...
14. **添加验证功能:** 使用Commons Validator进行表单验证。 #### 三、具体实施细节 **1. 下载必备组件** - **JDK1.4.2或以上版本:** 提供Java运行环境。 - **Tomcat5.0+:** 作为Web服务器容器。 - **Ant...
Struts2的Validator框架是基于Apache Commons BeanUtils和Apache Commons DBCP的,它可以自动将表单字段映射到Action类的属性,并对这些属性进行验证。在用户登录场景下,通常需要验证用户名和密码是否有效,如非空...
- 为了确保数据的有效性和一致性,使用Commons Validator库进行表单验证。 - 在Action类中添加验证逻辑。 #### 四、总结 - 本章介绍了如何使用Struts作为前端框架、Spring作为中间层以及Hibernate作为后端技术来...
Spring MVC 提供了一系列的功能,如表单验证、文件上传、国际化支持等,大大简化了 Web 开发的过程。 ##### 1.3 MyBatis框架 MyBatis 是一个优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis ...
Struts通过Action和ActionForm对象处理用户请求,使用Tiles进行视图管理,提供了强大的表单验证功能。 3. **Hibernate**:Hibernate是一个对象关系映射(ORM)框架,它允许开发者用Java对象来操作数据库,而无需...
13. **validation-api.jar** 和 **hibernate-validator.jar**:JSR 303/JSR 349验证API和Hibernate验证实现,用于表单验证。 14. **jackson-databind.jar**,**jackson-annotations.jar**,**jackson-core.jar**:...
Struts2提供了丰富的拦截器,可以方便地处理表单验证、文件上传等常见需求,同时支持多种结果类型和模板技术,如FreeMarker、JSP等。 **Hibernate3** 是一个强大的ORM框架,它简化了Java应用程序与数据库之间的交互...
它允许开发者定义数据验证规则,应用于实体属性,可以在Spring MVC中与表单绑定和数据绑定过程结合,确保输入数据的正确性。 8. **Spring JDBC**: 提供了对JDBC的抽象层,简化了数据库操作,比如模板类和数据源管理...
- **表单验证**:使用 Commons Validator 添加前端和后端的数据验证。 #### 六、BeanFactory 及其工作原理 - **Bean 生命周期**:从创建到销毁的整个过程中,Spring 会调用特定的方法来管理 bean 的状态。 - **反转...