使用@Component注释自定义验证器时,将忽略JSR-303验证

使用@Component注释自定义验证器时,将忽略JSR-303验证,第1张

使用@Component注释自定义验证器时,将忽略JSR-303验证

因此,您的代码中存在许多问题。首先,您的自定义验证程序不支持任何功能,因此永远不会被调用。您可能意识到了,所以我将由您自己解决。

但是,您真正的问题是,通过创建像这样的验证器bean,Spring既不会创建该

defaultValidator
bean(是
LocalValidatorFactoryBean
),也不会创建该
methodValidationPostProcessor
bean(用于验证方法参数)。这是人们在Spring中遇到的一个常见问题:一旦您做一些事情来干扰自动配置过程,就必须手动定义。解决方案很简单:创建一个定义这些bean的配置类。例:

@Configurationpublic class ValidationConfig {    @Bean public LocalValidatorFactoryBean defaultValidator() {        return new LocalValidatorFactoryBean();    }    @Bean public MethodValidationPostProcessor methodValidationPostProcessor() {        return new MethodValidationPostProcessor();    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5641554.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存