소스코드 다운받기

7-1 스프링 컨테이너 생명 주기

  1. 스프링 컨테이너 생성
  2. 스프링 컨테이너 설정
  3. 스프링 컨테이너 사용
  4. 스프링 컨테이너 종료
// Main.java

// 1. 생성
GenericXmlApplicationContext ctx = new GenericXmlApplicationContext();

// 2. 설정
ctx.load("classpath:applicationCTX.xml");
ctx.refresh();

// 3. 사용
Student student = ctx.getBean("student", Student.class);
System.out.println("이름 :" + student.getName());
System.out.println("나이 :" + student.getAge());

// 4. 종료
ctx.close();

7-2 스프링 빈 생명 주기

  1. implements InitializingBean, DisposableBean

    1. InitializingBean 구현
      • afterPropertiesSet()을 오버라이딩한다
      • 빈 초기화 과정에서 호출된다
      • ctx.refresh(); 할 때 호출
    2. DisposableBean 구현
      • destroy()를 오버라이딩한다
      • 빈 소멸과정에서 생성된다
      • ctx.close(); 할 때 생성
  2. @PostConstruct, @PreDestroy

    1. @PostConstruct
      • InitializingBean을 구현한 것과 같은 기능
      • 빈 초기화 과정에서 호출 하고 싶은 메서드 위에 @PostConstruct annotation 추가
      • ctx.refresh(); 할 때 호출
    2. @PreDestroy
      • DisposableBean을 구현한 것과 같은 기능
      • 빈 소멸 과정에서 생성 하고 싶은 메서드 위에
      @PreDestroy annotation 추가
      • ctx.close(); 할 때 생성

7-3 스프링 빈 범위

참고자료