Spring参数验证注解不验证

问题描述 投票:0回答:3

我有一个像这样的控制器方法:

import javax.validation.Valid;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;

@Controller
@RequestMapping(value = "/foo")
public class Controller
{
    @Autowired Service svc;

    @RequestMapping(value="/bar/{id}", method=RequestMethod.GET)
    @ResponseBody
    BasicResponseDto<ResponseDto>
    bar(@Valid @PathVariable @Min(0) @NotNull final Long id)
    {
        // ...
    }
}

但是验证注解好像没有任何作用。我可以给它 0,但它仍然可以正常运行。

我需要做什么才能让它拒绝无效值?

java spring validation
3个回答
1
投票

0 对于@Min(0) 有效。将其更改为 @Min(1) 并发送 0...


1
投票

@Min 包含提供的参数。


0
投票

尝试将

@Validated
添加到您的控制器。

像这样:

@Controller
@RequestMapping(value = "/foo")
@Validated
public class Controller
{

}
© www.soinside.com 2019 - 2024. All rights reserved.