반응형
Notice
Recent Posts
Recent Comments
관리 메뉴

개키우는개발자 : )

자바코드 구성 정보 사용 본문

반응형

결론 및 요약

팩토리 메서드를 사용하여 Java 코드로 스프링 빈(Bean)을 등록하고 의존성을 주입하는 방법을 다뤘습니다. 또한, 이를 구성하는 스프링 컨테이너에서의 구성 정보 처리 방법을 학습했습니다. 이는 스프링 애플리케이션에서 좀 더 유연하고 복잡한 빈 생성 및 의존성 주입을 지원하기 위해 사용될 수 있습니다.

주요 내용 요약

  1. 팩토리 메서드를 통한 빈 생성:

    • 스프링에서 제공하는 팩토리 메서드는 자바 메서드를 사용해 오브젝트를 생성하고, 이를 빈으로 등록할 수 있는 방식입니다.
    • 예를 들어, HelloControllerHelloService와 같은 빈 오브젝트를 팩토리 메서드에서 생성하여 스프링 컨테이너에 등록할 수 있습니다.
  2. 팩토리 메서드의 이점:

    • 복잡한 빈 초기화: 복잡한 초기화나 의존성 주입이 필요한 경우, 팩토리 메서드를 통해 자바 코드로 직접 관리하는 것이 유리합니다.
    • 이 방법은 자바 코드를 통해 복잡한 로직을 담아 간결하고 쉽게 관리할 수 있는 장점을 제공합니다.
  3. 의존성 주입(Dependency Injection):

    • 팩토리 메서드에서 HelloController를 만들 때 HelloService 빈이 주입되어야 합니다.
    • 이를 위해 스프링 컨테이너가 필요한 의존성을 주입해주며, 팩토리 메서드의 파라미터로 전달하여 생성자에서 주입받습니다.
  4. 스프링 빈 등록:

    • @Bean 애노테이션: 스프링 컨테이너에 팩토리 메서드가 생성한 오브젝트를 빈으로 등록하려면 메서드에 @Bean 애노테이션을 붙입니다.
    • @Configuration 애노테이션: 클래스 레벨에서 이 클래스가 구성 정보를 가진다는 의미로 @Configuration 애노테이션을 붙입니다.
  5. 스프링 컨테이너와 애노테이션 기반 구성:

    • 기존에 사용한 Generic ApplicationContext는 자바 코드를 기반으로 한 구성 정보를 읽을 수 없으므로, AnnotationConfigWebApplicationContext로 변경하여 자바 애노테이션 기반 구성을 처리할 수 있도록 수정했습니다.
  6. 팩토리 메서드 적용 테스트:

    • 스프링 컨테이너에서 팩토리 메서드와 애노테이션 구성을 통해 잘 동작하는지 확인하는 과정을 진행했습니다.

결론:

팩토리 메서드를 사용해 자바 코드로 복잡한 빈 생성과 의존성 주입을 보다 유연하게 처리할 수 있으며, 스프링의 애노테이션 기반 구성 정보 처리를 통해 애플리케이션의 빈 생성을 효과적으로 관리할 수 있음을 배웠습니다. 다음 시간에는 더 간결한 방식으로 빈을 등록하는 방법을 알아볼 예정입니다.

반응형
Comments