在使用 validation 时遇到的问题

2019-03-09 23:28:12 +08:00
 joooooker21

问题描述 : 在配置好需要校验的 Bean 后,能否在进行校验时,忽略部分业务不需要校验的参数?--比如:用户登录和用户注册两个接口,使用同一个 Bean 来接收参数,用户注册时手机号需要校验,而登录则不需要手机号

1720 次点击
所在节点    Java
5 条回复
zjp
2019-03-09 23:40:24 +08:00
不同业务请用不同的 Bean
joooooker21
2019-03-09 23:47:24 +08:00
@zjp 谢谢指教,刚入行,不是很懂规范
feiyuanqiu
2019-03-10 00:36:47 +08:00
校验规则注解都有一个 groups 属性,用它配置校验规则组实现你的需求。比如使用 SpringBoot:

Allianzcortex
2019-03-10 01:20:53 +08:00
@feiyuanqiu 的回复 +1 , 和 @JsonView 这个注解非常像,https://reflectoring.io/bean-validation-with-spring-boot/ 这篇文章讲解的挺详细的( D,需要的是 Validated 在 methodlevel 而不是 classlevel 上运用,Using Validation Groups to Validate Objects Differently for Different Use Cases
joooooker21
2019-03-10 14:20:10 +08:00
@feiyuanqiu @Allianzcortex get√ 这就是我想知道的 Thanks♪(・ω・)ノ

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/542908

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX