我拥有开发 REST API 的 .NET 背景。现在使用 spring boot 从事 java REST 项目。
首先,我在控制器 @RequestBody 上的验证停止工作。在尝试修复它时,我看到了不同的实施方法。那么注释 @RequestBody 的正确方法是什么?
@Validated @RequestBody
or
@Valid @RequestBody
两者一般没有太大区别@Valid
来自JSR-303标准,@Validated
是弹簧标准。根据春季文件:
Spring 提供了一个 Validator 接口,可用于应用程序所有层中的验证。在 Spring MVC 中,您可以将其配置为用作全局 Validator 实例,在遇到 @Valid 或 @Validated 控制器方法参数时使用,和/或通过 @InitBinder 方法用作控制器内的本地 Validator。全局和本地验证器实例可以组合起来提供复合验证。
参考:https://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-config-validation https://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-config-validation
但是存在差异,其中之一是例如,如果您需要使用group
在您的验证注释中,您需要使用@Validated
,不支持@Valid
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)