我希望Spring Boot会将现有的验证器连接到
EntityManager显然没有的连接器。
您可以使用
HibernatePropertiesCustomizer并向现有属性添加属性,
EntityManagerFactoryBuilder然后注册
Validator。
注意: 我在这里假设您正在使用Spring Boot 2.0
@Componentpublic class ValidatorAddingCustomizer implements HibernatePropertiesCustomizer { private final ObjectProvider<javax.validation.Validator> provider; public ValidatorAddingCustomizer(ObjectProvider<javax.validation.Validator> provider) { this.provider=provider; } public void customize(Map<String, Object> hibernateProperties) { Validator validator = provider.getIfUnique(); if (validator != null) { hibernateProperties.put("javax.persistence.validation.factory", validator); } }}这样的事情应该使现有的验证器与hibernate连接,并利用自动连接。
注意: 您不需要
@Component在验证器上使用自动装配内置到验证器工厂中,然后再返回的实例
Validator。



