본문 바로가기

Factory Pattern 을 이용한 비지니스 - DAO 연결 Spring 관련 책을 보다가 EJB나 Spring 같은 Container 을 사용하지 않고 개발하던 시절에 쓰던 방법이라고 하면서 소개되어 있었음. 이를 옮김. DAO 부분에 UserDAOFactory 클래스가 존재하며 이 클래스는 UserDAO 형태의 Interface 로 결과값을 넘김. 결국 UserDAO 를 상속받은 클래스들을 작성하며 DAO 반환시 매개변수로 넘어온 값에 따라 OracleUserDAO 나 MySqlUserDAO 를 넘겨주게 됨. Service.UserService.java : 서비스 객체로 DAO 객체를 얻어와 DAO 메서드를 실행하게 된다. package factorypattern.service; import factorypattern.dao.UserDAO; import fac.. 더보기
Bean 정보를 읽어 멤버변수를 반환하게 하는 클래스 PropertyDescriptor 클래스를 이용하여 Bean 내용을 읽어 setXXX, getXXX 중 한개라도 메서드가 존재하는 멤버변수 값을 받아오는 클래스를 작성해 보았다. 또한 해당 Member 변수에 담긴 값도 알아올 수 있었다. (다만 setter 가 실행되지 않게 되면 값이 할당되지 않아 null이 ㅂ Java 환경에서 수행하였기에 PropertyDescriptor 를 얻어오는 방법으로 Instrospector 클래스와 BeanInfo 클래스를 사용하였다. 만약 웹 환경이라면 아차피 홈페이지에서 받은 Commons-beanutils.jar를 이용하여 다음과 같이 코딩하면 되겠다. PropertyDescriptor[] descriptor = PropertyUtils.getPropertyDesc.. 더보기
제네릭 클래스 관련 제네릭 클래스 JDK1.5 부터 도입되었으며 주로 Map 부분에서 볼 수 있다. ArrayList tmpArray = new ArrayList(); 처럼 사용하게 된다. 이렇게 되면 tmpArray 에는 String 형의 Object만 입력이 가능하게 된다. (다른 형태의 객체 입력 시 실행 시점에서 에러가 발생한다.) 이를 통해 ArrayList에 형에 상관없이 무조건적으로 어느 객체나 입력가능함으로써 생길 수 있는 예상치 못한 에러를 방지할 수 있다. ArrayList 는 제네릭 클랙스로 만들어진 것이며 사용자 개인도 Class 이와 같은 형태로 Class를 만들어 사용할 수 있다. 사용자가 만든 제네릭 클래스 package genericclass; import java.util.ArrayList; .. 더보기