spring boot 校验数据 正确性 不需要添加任何特殊的依赖

在给pojo 进行数据校验的时候, 比如id 在新增的时候必须不能为空, 跟新的时候必须不能为空,这个时候就可以对这个属性进行group 的分组

首先定义两个空的接口

public interface Insert{} //新增的校验接口

public interface update{}//更新的校验接口

不用写任何的实现.只需要空接口就可以了,然后在controller中 指定使用哪一个校验规则: 具体代码例子如下:

pojo:

@Data

@ToString

public class Book implements Serializable {

private static final long serialVersionUID = 1670292046158771865L;

@NotNull(groups = {Update.class} , message = "主键必须不为空")

@Null(groups = {Insert.class},message = "主键必须为空")

private Integer id;

 

private String name;

}

普通的请求映射

 

@RequestMapping("/book/insert")

@ResponseBody

public String insert(@Validated({Insert.class}) Book book) {

log.info("这是新增");

System.out.println(book);

/* if(true){

throw new Exception("故意错误");

}*/

return "新增";

}

 

@RequestMapping("/book/update")

@ResponseBody

public String update(@Validated(Update.class) Book book) {

System.out.println(book);

log.info("这是更新");

return "更新";

}

两个标志性接口 什么也不用写

public interface Insert {

}

 

public interface Update {

}

 

写一个这样的类 然后返回相应的格式 这里的jsonresult 是我自己封装的 统一给前台 的数据

 

 

如果只是一种的话,可以直接使用@valid 进行校验

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值