Programming/Spring

Spring DI Java를 이용한 설정

byeong07 2018. 6. 13. 15:18

이전에 xml 파일을 이용하여 DI를 설정했습니다.

 

이번에는 Java를 이용해서 DI를 설정하겠습니다.

 

xml 파일에서 setter()와 생성자를 통해 설정을 했습니다.

 

이번에는 Java를 이용해 setter()와 생성자를 사용하겠습니다.

 

 

 

 

 

MyCats 클래스에서도 마찬가지로 변수와 setter()를 추가했습니다.

 

 

결과를 출력해주는 메서드가 있는 Cats.java 파일도 수정합니다.

 

 

이제 setter()와 생성자를 사용해서 Java에서 Bean(객페)를 생성하겠습니다.

 

ApplicaitonContext.java 파일 생성 후 작성

 

 

Java 파일에서는 어노테이션을 이용해서 객체를 생성합니다.

 

@Configuration - "이 클래스는 Spring 설정에 사용되는 클래스입니다."라고 명시해주는 어노테이션

 

@Bean - 객체를 생성하는 어노테이션

 

Java 파일에서 설정하는 방법과 xml 파일에서 설정하는 방법을 비교하면 다음과 같습니다.

 

이제 고양이 객체를 이용해서 정보를 출력합니다.

 

 

Java 파일에서는 어노테이션을 이용해서 bean을 설정했기 때문에 xml에서 설정했을 때 객체를 가져오기 위해 사용했던

 

클래스가 아닌 AnnotationConfigApplicationContext 클래스를 이용하여 context를 불러옵니다.

 

이전에 사용했던 GenericXmlApplicationContext 클래스에서 파생된 클래스이기 때문에 Java 파일도 결국 내부적으로

 

xml로 변환된다고 합니다.