数据格式化、数据校验
数据校验有JSR303 和Hibernate Validator(拓展)
使用Hibernate Validator步骤:
a.jar(注意各个jar之间可能存在版本不兼容)
hibernate-validator-5.0.0.CR2.jar classmate-0.8.0.jar jboss-logging-3.1.1.GA.jar
validation-api-1.1.0.CR1.jar hibernate-validator-annotation-processor-5.0.0.CR2.jar
b.配置使用
model类student.java
public class Student {
@NumberFormat(pattern="###,#")
private int id;
@DateTimeFormat(pattern="yyyy-MM-dd")//将前台传递来到数据规定为为yyyy-MM-dd,不符合则报错
@Past//当前时间以前
private Date birthday ;// 2018-12-13
}
handler
@RequestMapping(value="testDateTimeFormat")
/*如果Student格式化出错,会将错误信息传入result中
* 在校验的Controller中 ,给校验的对象前增加 @Valid
*/
public String testDateTimeFormat(@Valid Student student , BindingResult result) {
System.out.println(student.getId()+","+student.getName()+","+student.getBirthday());
//有错误则打印到控制台,前端不报,可设前端报
if(result.getErrorCount() >0) {
for(FieldError error: result.getFieldErrors() ) {
//错误信息
error.getDefaultMessage();
}
}
return "success";
}
其他注解详见文件
springmvc.xml
<!-- 一般已配 -->
<mvc:annotation-driven ></mvc:annotation-driven>