Java/Spring

자바 코드로 스프링 bean 직접 등록

필리힐리 2021. 8. 23. 00:24

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%9E%85%EB%AC%B8-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8/lecture/49587?tab=curriculum 

 

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 인프런 | 학습 페이지

지식을 나누면 반드시 나에게 돌아옵니다. 인프런을 통해 나의 지식에 가치를 부여하세요....

www.inflearn.com

 

bean 직접 등록

자바 설정 클래스에 직접 bean을 등록해 관리할 수 있다.

 

컨트롤러는 스프링이 직접 관리하기 때문에 어노테이션과 오토와이얼드를 설정해준다.

 

 

* DI 주입 참고 블로그

https://mangkyu.tistory.com/125

 

[Spring] 다양한 의존성 주입 방법과 생성자 주입을 사용해야 하는 이유

Spring 프레임워크의 핵심 기술 중 하나가 바로 DI(Dependency Injection, 의존성 주입)이다. Spring 프레임워크와 같은 DI 프레임워크를 이용하면 다양한 의존성 주입을 이용하는 방법이 ..

mangkyu.tistory.com

 

DI 주입 세가지 방법

1. Field

요샌 자주 사용되지 않음

외부에서 변경이 불가능해 테스트 코드를 작성할 때 어려움을 발생시킨다.

당장은 제대로 이해가 가지 않아 좀 더 알아봐야겠다.

인텔리제이도 추천하지 않는다...

 

2. Setter

bean 생성 이후에 주입되기 때문에 의존관계가 변경될 수 있는 (가능성) 문제를 가지고 있다.

또한 public으로 개방되어 있는 것도 문제이다.

개발할 때 의존관계가 변경되는 경우는 극히 드물기 때문에 생성자 주입을 권장

 

3. Constructor

애플리케이션이 실행되고 스프링 컨테이너에 bean이 올라갈 때 한 번 주입되고

이후엔 의존관계 변경이 불가능하기 때문에 안전하다.

'Java > Spring' 카테고리의 다른 글

좋은 객체 지향 프로그래밍이란?  (0) 2021.08.28
객체가 주입 & 객체 지향의 장점  (0) 2021.08.25
컴포넌트 스캔과 자동 의존관계 설정  (0) 2021.08.22
assertThrows  (0) 2021.08.22
Optional - 미완료  (0) 2021.08.22