我如何注入 ConstraintValidator?

How do i inject ConstrainValidator?

假设我有一个注释 A

@Target({TYPE})
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {Validator.class})
public @interface A {

   String value() default "";

   String message() default "{javax.validation.constraints.form.customization.message}";

   Class<?>[] groups() default {};

   Class<? extends Payload>[] payload() default {};
}

有一个 Constraint Validator,它 不是 ConstraintValidator 的一个实现,而是一个扩展一个

public interface Validator extends ConstraintValidator<A, Entity> {
}

然后是验证器的一些实现。有什么方法可以让它与 Spring、依赖注入和所有这些好东西一起工作吗?谢谢

Okkkkkkkkkkkkk,这实际上是可能的。

原来这个问题是 another one 的副本。唯一的问题是它现在还行不通。这是您必须添加到配置中的最后一段代码。

    @Bean
    Validator validatorFactory() {
        ValidatorFactory validatorFactory = Validation.byDefaultProvider()
                .configure()
                .constraintValidatorFactory(new SpringConstraintValidatorFactoryEx())
                .buildValidatorFactory();

        return validatorFactory.getValidator();
    }

它来自 Hibernate documentation 以防有人疑惑