스프링

    스프링 - 의존 관계 주입 방법 4가지

    이제까지 컴포넌트 스캔을 통해서 설정 파일에서 따로 @Bean을 통해서 빈을 등록하지 않고 @Component을 통해 스프링 컨테이너에 등록하는 방법을 정리해보았다. 클래스에 @Component를 붙이고, 의존 관계 또한 해당 클래스 내에서 정의해줘야 하는데 이번엔 이 의존 관계 주입 방법에서 대표적인 4가지를 정리해보려 한다. 1. 생성자 주입 @Service public class AService{ private final ARepository aRepository; @Autowired public AService(ARepository aRepository){ this.aRepository = aRepository; } } - 말 그대로 생성자를 이용한 의존 관계 주입 방법이다. - 스프링이 컴포넌트..

    스프링 - @Component와 컴포넌트 스캔

    스프링 - @Component와 컴포넌트 스캔

    이제까지 1. 관심사의 분리를 위한 자바 코드를 이용한 설정 파일 + 의존관계 주입 https://bbeomgeun.tistory.com/141 스프링 - 의존 관계와 DI, Ioc 컨테이너 0. 의존 관계란 - 의존 관계란 어떤 대상 A가 대상 B에 영향을 받는, 연관이 있는 관계이다. (사용하는 관계면 의존한다라고 봐도 무방한 것 같다.) - 예를 들자면, 인터페이스 A를 구현한 클래스 cla bbeomgeun.tistory.com 2. 스프링 컨테이너 + 자바 설정 파일을 이용한 의존관계 주입으로 싱글톤 컨테이너 구성 https://bbeomgeun.tistory.com/142 스프링 - 스프링 컨테이너, 싱글톤 0. 스프링 컨테이너 - ApplicationContext를 스프링 컨테이너라고 부른다..

    스프링 - 의존 관계와 DI, Ioc 컨테이너

    0. 의존 관계란 - 의존 관계란 어떤 대상 A가 대상 B에 영향을 받는, 연관이 있는 관계이다. (사용하는 관계면 의존한다라고 봐도 무방한 것 같다.) - 예를 들자면, 인터페이스 A를 구현한 클래스 classA에서 인터페이스 B를 구현한 클래스 classB1을 사용한다. public class classA implements A{ private B objectB = new classB1(); } 이러면 클래스 classA는 인터페이스 B와 구체 클래스 classB1에 의존하는 관계가 되는 것이다. 하지만 이렇게 의존 관계를 설정한다면 문제점이 있다. 0. SRP(단일 책임원칙) 위반 클래스 classA는 직접 구현 객체를 생성하고, 연결하고, 실행하는 다양한 책임을 가지고 있다. 하나의 클래스에는 하..