여기에 가장 기본적인 스프링 검사기 샘플이 있습니다 .--). 데스크톱 응용 프로그램이므로 특정 순간에 유효성 검사를 호출해야하는 컨테이너를 실행하고 있지 않습니다.
봄 컨테이너와 같은 방식으로 validate 메소드를 호출하는 유틸리티가 있습니까? 또는 validate를 호출하는 것으로 충분합니까? 이 경우 유효성 검사를 위해 전달해야하는 Errors
개체의 구체적인 구현은 무엇입니까? Stirng firstName을 속성과 문자열 secondName 속성을,
데스크톱 응용 프로그램의 스프링 유효성 확인
처음에는 Person 클래스가 있습니다 : 여기
은 예 (주로 장식)는 다음public static class Person {
public static final String PROP_FIRSTNAME = "firstName";
String firstName;
public static final String PROP_SECONDNAME = "secondName";
String secondName;
public String getFirstName() {return firstName;}
public void setFirstName(String firstName) {this.firstName = firstName;}
public String getSecondName() {return secondName;}
public void setSecondName(String secondName) {this.secondName = secondName;}
}
나는 단순히 PersonValidator이 Person이 null이 아닌 firstName을 가지고 있는지 확인하십시오.
public static class PersonValidator implements Validator {
public boolean supports(Class<?> clazz) {
return Person.class.isAssignableFrom(clazz);
}
public void validate(Object target, Errors errors) {
ValidationUtils.rejectIfEmpty(errors, Person.PROP_FIRSTNAME , "First name must be ");
}
}
이제 문제가 생깁니다 : 어떻게 사용합니까?
public static void main(String [] args) {
Person p = new Person();
PersonValidator v = new PersonValidator();
//HOW TO PERFORM VALIDATION?
//v.validate(p, null)
}
는, 아마도 당신이 거기에 회신 할 수 있습니다 : 여기
무슨 뜻인지 명확하게 몇 가지 예제 코드입니다 http://stackoverflow.com/questions/9693656/javabeans-validation- in-a-desktop-application/9695098 # comment12334789_9695098. JSR 303에 대해 이야기하고 있다면, 이것은 하이버 네이트 또는 스프링 3 구현에서 사용할 수있는 자바 EE 사양입니다! – AgostinoXAgostinoX : BeanValidation은 JSR 303입니다. JEE에서 사용되지만 standart java에서도 사용할 수 있습니다. 참조 구현은 "Hiberante Validator"이며, 이것은 Hibernate (ORM)이 아닙니다. 즉, 독립 실행 형 응용 프로그램에서 perferct를 사용할 수 있습니다. – Ralph
방아쇠를 통과 한 Apache BVal 구현과 비슷해 보입니다. 다른 대안이기도합니다. http://incubator.apache.org/bval/cwiki/2012/02/21/apache-bval-has-graduated-the-incubator.html – ebaxt