Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개발용

Bean factory 본문

개발/WEB

Bean factory

DeP 2017. 1. 24. 14:23

-디자인 패턴 : Interface와 다형성을 이용하여 클래스-객체 변환을 쉽게할 수 있음. 그러나 이 또한 소스코드를 수정해야 함

Ex) [INTERFACE_NAME] [REF_NAME] = new [CLASS_NAME(implements [INTERFACE_NAME])]

 

-Spring과 달리 *Context.xml파일을 생성하지 않음

-ex) BeanFactory.java파일을 생성

 

Ex)BeanFactory.java    //받는 매개변수 이름(String)에 따라 각각 다른 CLASS-REF반환

public class BeanFactory {
    public Object getBean(String beanName)
    {
        if(beanName.equals("samsung")){
            return new SamsungTV();
        }

  else if(beanName.equals("lg")){
      return new LgTV();
  }
  

  return null;

}

}

 

 

Ex)Client.java

public static void main(String[] args){

BeanFactory factory = new BeanFactory();

[CLASS_NAME] [REF_NAME] = ([CLASS_NAME])factory.getBean(args[0]);

//[CLASS_NAME]에 존재하는 필요한 메소드 호출

}

 

- Client 소스코드 수정하지 않아도 됨

- 설정에서 args목록만 수정해주면 됨 => 결합도 ↓ //BeanFactory가 적절한 객체 생성 후 반환

'개발 > WEB' 카테고리의 다른 글

[Spring] AOP  (0) 2017.01.24
[Spring] 어노테이션 기반 설정  (0) 2017.01.24
[Spring] DI(의존성 주입)  (0) 2017.01.24
[Spring] IoC  (0) 2017.01.24