Spring Boot 菜鸟教程 19 后台验证 Hibernate Validation
来源:互联网 发布:xp无法连接网络打印机 编辑:程序博客网 时间:2024/05/21 09:29
GitHub
后台验证
- 开发项目过程中,后台在很多地方需要进行校验操作,比如:前台表单提交,调用系统接口,数据传输等。而现在多数项目都采用MVC分层式设计,每层都需要进行相应地校验。
- 针对这个问题, JCP 出台一个 JSR 303-Bean Validation规范 ,而Hibernate Validator 作为Bean Validation的参考实现,提供了JSR 303规范中所有内置constraint的实现,除此之外还有一些附加的constraint。
- Hibernate Validation的使用非常简单,只用在相应的实体类中加上注解,再调用对应的校验API方法即可。
验证效果
pom.xml
<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId></dependency>
User
import javax.validation.constraints.Max;import javax.validation.constraints.Min;import javax.validation.constraints.Size; @Id @GeneratedValue private Long id; @Size(min = 5, max = 30) private String name; @Min(18) @Max(60) private Integer age;
CommonExceptionAdvice
/** * 400 - Bad Request */ @ResponseStatus(HttpStatus.BAD_REQUEST) @ExceptionHandler(ConstraintViolationException.class) public AjaxResult handleServiceException(ConstraintViolationException e) { logger.error("参数验证失败", e); Set<ConstraintViolation<?>> violations = e.getConstraintViolations(); ConstraintViolation<?> violation = violations.iterator().next(); String message = violation.getMessage(); return new AjaxResult().failure("parameter:" + message); } /** * 500 - Internal Server Error */ @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR) @ExceptionHandler(Exception.class) public AjaxResult handleException(Exception e) { logger.error("通用异常", e); return new AjaxResult().failure("通用异常:" + e.getMessage()); }
user.jsp
<table align="center"> <tr> <td>名称:</td> <td><input class='easyui-textbox' type='text' name='name'></input></td> </tr> <tr> <td>年龄:</td> <td><input class='easyui-numberbox' type='text' name='age'></input></td> </tr></table>
其他关联项目
- Spring Boot 菜鸟教程 7 EasyUI-datagrid
http://blog.csdn.net/je_ge/article/details/53365189
源码地址
https://github.com/je-ge/spring-boot
如果觉得我的文章或者代码对您有帮助,可以请我喝杯咖啡。您的支持将鼓励我继续创作!谢谢!
0 0
- Spring Boot 菜鸟教程 19 后台验证 Hibernate Validation
- spring boot 使用hibernate-validation
- Spring Boot 菜鸟教程 1 HelloWorld
- Spring Boot 菜鸟教程 2 Data JPA
- Spring Boot 菜鸟教程 3 MyBatis
- Spring Boot 菜鸟教程 异常 集锦
- Spring Boot 菜鸟教程 4 JDBC
- Spring Boot 菜鸟教程 7 EasyUI datagrid
- Spring Boot 菜鸟教程 15 页面国际化
- Spring Boot 菜鸟教程 16 数据国际化
- Spring Boot 菜鸟教程 17 Cache-缓存
- Spring Boot 菜鸟教程 20 elasticsearch
- Spring Boot 菜鸟教程 21 分布式会话
- Spring Boot 菜鸟教程 22 Redis
- Hibernate Validation验证
- java validation 后台参数验证
- Spring Hibernate Validation
- Spring Boot 菜鸟教程 6 全局异常处理
- 【jzoj3277】【GDOI2013】【哈希和】【后缀数组】
- android 获取屏幕尺寸
- new和malloc的区别
- 疯狂的程序员阅读笔记
- 讯为4412精英版让OTG支持HOST模式
- Spring Boot 菜鸟教程 19 后台验证 Hibernate Validation
- 【Basic Code】转义符 小结
- git常用功能及设置
- Linux网络编程之SOCKET文件传输
- [POJ1320] Street Number
- 数据结构算法中用到的存储结构
- 常用数学算式。
- 【C++】 C++标准模板库(十二) 迭代器和STL
- Proguard的Keep使用方法