烈如歌歌 2020-05-29 16:20 采纳率: 0%
浏览 5592

关于@NotNull 注解中groups 的作用

public class User implements Serializable {

@NotNull(message = "primary is not null",groups = {GroupInterface1.class})
private Long id;

}
我就想问一下 我知道这个@NotNull是校验为不为空得东西,我想知道的是里面得groups 定义是有什么作用,GroupInterface1这个类应该是自定义的类,他是很普通得实体类,还是说里面定义得特殊方法,看了好多都没有说明这个问题的,麻烦知道得能说明一下,如果简单就文字表达,如果能用代码说明下,让我一下看懂最好。不要说让我翻资料,找不到才问的。终点是groups有啥用,别讲@NotNull的用处。谢谢了。迫切想知道。

  • 写回答

1条回答 默认 最新

  • 封印di恶魔 2020-05-29 17:22
    关注

    groups是验证分组,比如我有的验证只有更新的时候做,有的只有添加的时候做,就用这个
    javax.validate里有提供一个默认分组Default.class是个接口,不指定分组时都会执行这个,分组是个空的接口
    在字段上面指定他们的分组

    @NotNull(message = "primary is not null",groups = {GroupInterface1.class})
    private Long id;
    

    然后在方法里指定对象用哪些分组验证

    public void test(@Validated(GroupInterface1.class) User user) {
    
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大