项目中好用的JSR303校验
项目中好用的JSR303校验
- 1. 为什么使用jsr303
- 2. 使用指南
-
- 2.1 引入JSR303依赖
- 2.2 在接收参数的dto对象的属性上添加校验规则
- 2.3 在对应的controller层的接口处开启校验
- 2.4 结果展示
1. 为什么使用jsr303
前端请求后端接口传输参数需要校验请求参数的合法性,包括:必填项校验,数据格式校验,比如:是否是符合一定的日期格式等等。这是好用的JSR303来了,恰巧SpringBoot提供了支持。
2. 使用指南
2.1 引入JSR303依赖
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency>
2.2 在接收参数的dto对象的属性上添加校验规则
例如:
@Data
public class PostAddDto {/*** 标题*/@Size(min = 5,max = 100,message = "标题在5~100字")private String title;/*** 内容*/@NotBlank(message = "内容不为空")private String content;}
在添加文章中,对请求参数中的标题和内容进行要求。
常用的JSR303注解如下:
2.3 在对应的controller层的接口处开启校验
@PostMappingpublic R<Long> addPost(@RequestBody @Validated PostAddDto postAddDto){return postInfoService.addPost(postAddDto);}
@Validated激活JSR303校验。
2.4 结果展示
标题不合法:
内容和标题不合法: