inblog logo
|
LHS's Study Space
    스프링부트

    [스프링 부트] 7. 의존성 주입

    lhs's avatar
    lhs
    Nov 17, 2024
    [스프링 부트] 7. 의존성 주입
    Contents
    1. 생성자 주입2. Lombok을 활용한 생성자 주입
     

    1. 생성자 주입

    @Controller public class BoardController { private final BoardService boardService; // public BoardController(){ // } public BoardController(BoardService boardService) { this.boardService = boardService; } }
    • 기본 생성자 없이 매개변수를 가진 생성자만 있을 경우, 스프링은 이 생성자를 통해 BoardService 빈을 주입하여 의존성을 설정한다.
    • 기본 생성자가 있을 경우, 스프링은 기본 생성자를 사용하고, 매개변수 있는 생성자는 무시되므로 매개변수 생성자를 사용하려면 기본 생성자를 제거해야 한다.
    • BoardService에 final을 붙여 의존성 주입을 보장하고, 의존성 주입 후 값 변경을 방지한다.

    2. Lombok을 활용한 생성자 주입

    @RequiredArgsConstructor @Controller public class BoardController { private final BoardService boardService; }
    • @RequiredArgsConstructor 어노테이션을 사용하면 final이 붙은 필드에 대한 생성자를 자동으로 생성해준다.
    • 생성자를 자동으로 생성해주어 코드가 간결해지고, 의존성 주입을 쉽게 처리할 수 있다.
    Share article
    Contents
    1. 생성자 주입2. Lombok을 활용한 생성자 주입

    LHS's Study Space

    RSS·Powered by Inblog