데이터 Validator 체크를 위해서 공통클래스를 만들곤 하는데 이미 만들어진걸
씀으로서 수고를 덜 수 있다. 그게 apache 에서 제공하는 common-validator jar 이다.
이것을 잘 활용한다면 많은 수고를 덜수 있다. 무식하게 만든다고 장땡이는 아니다.
있는걸 활용해서 시간을 업무에 집중할수 있는것도 중요하다.
http://commons.apache.org/validator/index.html
현재 1.3.1 까지 나와있는 상태이다. 그대로 활용해도 되지만
이 jar 내부에 제공하는 클래스들을 상속받아 좀더 구체적인 로직을 구현해서 사용하는것도
확장성 면에서 고려해볼만하다. 1.3. 에선 xml 검증 엔진도 추가되어있다.
routines 패키지 내에 보면 구체적으로 Validator 체크를 할수 있도록 클래스가 제공된다.
클래스 이름만 봐도 어떤 종류의 데이터를 체크할수 있을지 감이 올것이다.
그리고 제일 위 3개는 Abstract 라는 이름이 붙어있다. 이것은 추상클래스를 나타내며
3개를 제외한 클래스들에서 상속받아 구체적으로 구현한것이다. 그러므로 3개를 제외한
클래스들을 쓰면된다.
common-validator API 를 보면 http://commons.apache.org/validator/api-1.3.1/
설명에도 나와있지만 어떤 특정데이타를 다룰때 그 데이타에 해당하는 validator 를
체크할수 있도록 클래스가 분류 되어있는 것을 볼수있다.
데이타에 대한 validator 가 아닌 일반적인 체크는 아래 클래스들을 사용하면되는데
보통 Genericvalidator 를 많이 사용한다.
함수예제를 몇가지 추려보면 다음과 같다.
public static boolean isBlankOrNull(String value) : blank or null 체크
public static boolean isByte(String value) : Byte 로 변환가능한지 여부
public static boolean isShort(String value) : Short 변환가능한지 여부
public static boolean isInRange(byte value, byte min, byte max)
범위지정한 곳에 속하는지에 대한 여부 등등이 있다.
위 함수들을 사용해서 구현한 예제이다.
private static final int ID_CHECK_ID = 2;
public void validateId(String id){
if (!GenericValidator.minLength(id, ID_CHECK_ID)){
throw new IllegalArgumentException("ID 의 길이가 너무 작습니다");
}
}
'자바(JAVA)' 카테고리의 다른 글
Vector 클래스의 추가와 삭제 (0) | 2009.06.13 |
---|---|
struct 에서 BeanUtils.populate Exception 이 날때 (0) | 2009.06.06 |
local 컴퓨터 IP 정보, 호스트 이름 등을 가져오기 (0) | 2009.06.02 |
SOAP 통신에서 weblogic parsing error - jar 의 충돌 (0) | 2009.05.28 |
spring framework 적용하여 controller 에서 error stacktrace 에러 내용이 찍히지 않을때 (0) | 2009.05.26 |
Locale format 정보을 이용해서 Date outputs 를 원하는 형태로 만들어보자 (0) | 2009.05.19 |
윈도우 OS 에서 돌아가고 있는 프로세스명을 자바로 넘겨받는 방법 (0) | 2009.05.17 |
log4j.additivity 옵션으로 중복출력 제외 시키기 (0) | 2009.02.21 |