步骤一 引入jar包 <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>4.3.1.Final</version> </dependency>
第二步配置校验器 <mvc:annotation-driven validator="validator"></mvc:annotation-driven> <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"> <!-- 校验器 --> <property name="providerClass" value="org.hibernate.validator.HibernateValidator" /> <property name="validationMessageSource" ref="messageSource" /> </bean> <!-- 校验错误信息配置文件 --> <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource"> <!-- 资源文件名 --> <property name="basenames"> <list> <value>classpath:CustomValidationMessages</value> </list> </property> <!-- 资源文件编码格式 --> <property name="fileEncodings" value="utf-8" /> <!-- 对资源文件内容缓存时间,单位秒 --> <property name="cacheSeconds" value="120" /> </bean>
第三步骤 编写提示信息文件内容 user.name.length.error=用户名长度不合适 user.num.noNull= 用户名不能为空
第四步 在实体类中的属性上设置校验规则 @Size(min=1,max=14,message="{user.name.length.error}") @NotEmpty private String userName;
第五步 对实体类的实例运用校验 并接受校验信息 @RequestMapping(value="add") public void add(HttpServletRequest request,HttpServletResponse response,@Valid User user, BindingResult bindingResult) { List<ObjectError> allErrors = bindingResult.getAllErrors(); for(ObjectError e : allErrors){ System.out.println(e.getDefaultMessage()); } }