SpringBoot(十)
分组校验
同一个实体在不同的操作中的校验方式是不同的,这就要用到分组校验。比如实体在新增操作时,id是没有的,但是在更新操作时id又必须存在。
@NotNull 限制必须不为null。
实体类
@Data
public class Category {
@NotNull(message = "id不能为空",groups = {UpdataGroup.class})//2、设置分组
private Integer id;//主键ID
@NotEmpty
private String categoryName;//分类名称
@NotEmpty
private String categoryAlias;//分类别名
private Integer createUser;//创建人ID
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")//定义时间的格式
private LocalDateTime createTime;//创建时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime;//更新时间
public interface UpdataGroup {} //1、定义接口
}
@RestController
@RequestMapping("/category")
public class CategoryController {
@PostMapping
public Result add(@RequestBody @Validated Category category){
categoryService.add(category);
return Result.success();
}
@PutMapping
public Result update(@RequestBody @Validated(Category.UpdataGroup.class) Category category){//3、赋值
categoryService.update(category);
return Result.success();
}
}