Используйте инъекцию зависимостей пружины на пользовательском валидаторе HibernateJAVA

Программисты JAVA общаются здесь
Anonymous
Используйте инъекцию зависимостей пружины на пользовательском валидаторе Hibernate

Сообщение Anonymous »

Я хочу создать свой собственный пользовательский валидатор Hibernate и то, что я хотел бы сделать, это добавить пользовательскую логику на основе некоторой информации, собранной из другого контекста (другой пружинный фасоль) < /p>

На моей пользовательской реализации я попытался добавить конструктор и определить валидатор в пружинной фасоли или использование Autowire Annutation и не один из них. /> Пример Autowire: < /p>

public class MyCustomValidator implements ConstraintValidator {
@Autowired
private MyCustomChecker customChecker;

@Override
public void initialize(CustomConstraint constraintAnnotation) {
}

@Override
public boolean isValid(String value, ConstraintValidatorContext context) {
if (null == value) {
return true;
}

//get user authenticated properties to perform validation based on the user
AuthenticatedIdentity identity = Context.getAuthenticatedIdentity();
return customChecker.isWhitelisted(identity);
}
}
< /code>

Пример конструктора: < /p>

public class MyCustomValidator implements ConstraintValidator {

private MyCustomChecker customChecker;

public MetricDataSizeValidator(MyCustomChecker customChecker) {
this.customChecker = customChecker;
}

@Override
public void initialize(CustomConstraint constraintAnnotation) {
}

@Override
public boolean isValid(String value, ConstraintValidatorContext context) {
if (null == value) {
return true;
}

//get user authenticated properties to perform validation based on the user
AuthenticatedIdentity identity = Context.getAuthenticatedIdentity();
return customChecker.isWhitelisted(identity);
}
}
< /code>

Я читал о официальном документе Hibernate, но это не совсем отвечает на мой вопрос. < /p>



arg


< /code>

Есть ли какой -нибудь пример, как это достичь? < /p>

update < /strong> < /p>

Если я настрою свой валидатор: < /p>



< /code>

Теперь я вижу, что проверка подключена правильно с помощью пружинных бобов. Однако теперь я сомневаюсь, использую ли я HibernateValidator (я думаю, что я не). Есть ли способ достичь того же самого, но настроить фабрику HibernateValidator для использования пружинных бобов?

Подробнее здесь: https://stackoverflow.com/questions/595 ... -validator

Вернуться в «JAVA»