検証に問題があります。1 つの ConstraintValidator のみを使用して Bean の 2 つのプロパティを検証することは可能ですか? 私は次のようなものを持っています:
@Component
public class CheckSomeBeanPropertiesValidator implements ConstraintValidator<CheckSomeBeanProperties, SearchFormBean> {
@Autowired
SomeApplicationService applicationService;
public void initialize(CheckSomeBeanProperties checkSomeBeanProperties) {
}
public boolean isValid(SearchFormBean searchFormBean, ConstraintValidatorContext context) {
ReturnSearchBean searchBean = applicationService.findBySearchBean(searchFormBean);
if(searchBean.isNoResults()) return false; // it will return the message No data found
if(searchBean.isTooManyDataReturned()) return false; // it will return too many records found
return true;
}
}
CheckSomeBeanPropertiesValidator 内で、findBySearchBean を呼び出して検索されたデータを返すサービス SomeApplicationService を呼び出します。複数のカスタマイズされた ConstraintValidator (および複数の findBySearchBean) を呼び出さなければならない代わりに、サービスを 1 回だけ呼び出して 2 つの異なるプロパティをチェックすることは可能ですか?
ありがとう
さよなら