Please Enable JavaScript!
Gon[ Enable JavaScript ]

apache 에서 제공하는 Common Validator 사용하기

자바(JAVA)
반응형

데이터 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 길이가 너무 작습니다");

   }

}


반응형
Posted by 녹두장군1
,