【发布时间】:2017-11-20 16:11:38
【问题描述】:
我正在开发 spring-boot 应用程序,我需要在检查其他信息之前验证用户信息。这是一个sn-p:
@RequestMapping(value = "/create-user", method = RequestMethod.POST)
public String ceateCustomer(@Valid @RequestBody User user){
myService.create(user);
}
当用户来自另一个路由/create-sp-user时,我必须重新验证用户:
@RequestMapping(value = "/create-sp-user", method = RequestMethod.POST)
public String ceateCustomer(@Valid @RequestBody User user){
user.setSp(true);
// I tried @Valid user without success
// In my User class if sp = true the field telNumber is mandatory
myService.create(user);
}
你有什么想法吗?
最好的问候
【问题讨论】:
-
您可以轻松编写自己的自定义验证器,因为没有默认验证器可以根据其他值检查必填字段。
-
对不起,我没有得到你想要的。来自客户端的用户结构是什么?或者,您想在设置 sp = true 之后 验证用户?在这种情况下,您可能希望按照此处所述编写自定义验证器:stackoverflow.com/questions/12146298/… - @valid 注释在在控制器中执行任何代码之前对其进行检查。
-
谢谢@Dominik 是的,我必须在将 sp 设置为 true 后验证用户
标签: java spring validation spring-boot jsr