728x90

레파지토리를 선언만 해주고 의존성 주입을 해주지 않으면 널값이 들어가게 된다.
의존성 주입은 생성자를 통해서 할 수 있다.
아니면 어노테이션을 달아줘야 한다.
| @NoArgsConstructor | 파라미터가 없는 기본 생성자를 생성 |
| @AllArgsConstructor | 모든 필드 값을 파라미터로 받는 생성자를 만듦 |
| @RequiredArgsConstructor | final이나 @NonNull인 필드 값만 파라미터로 받는 생성자 만듦 |

의존성 주입 말로만 듣고 찾아보고 혼자 공부할때는 이해가 안됐었는데
직접 이렇게 널값이 들어가는걸 눈으로 보고 에러를 마주하니까 다시는 의존성주입에 대해 잊지 않을 것 같다.
파이널에 생성자를 꼭 넣어줘야 하는 이유 = 파이널은 변경이 불가능한데 초기화를 안시켜주면 어..? 나 파이널이라서 변경 불가능한데 초기값도 없어? 응 에러날게~ 함
참고자료)
[Lombok] @NoArgsConstructor , @AllArgsConstructor , @RequiredArgsConstructor
@NoArgsConstructor 파라미터가 없는 기본 생성자를 생성 @AllArgsConstructor 모든 필드 값을 파라미터로 받는 생성자를 만듦 @RequiredArgsConstructor final이나 @NonNull인 필드 값만 파라미터로 받는 생성자 만듦
athena7.tistory.com
'Practice > Java' 카테고리의 다른 글
| 테스트코드 공부 참고자료 블로그 (0) | 2023.03.06 |
|---|---|
| 테스트코드 공부 1 (0) | 2023.03.06 |
| 스프링) JPA 페이징 처리 개념 및 활용방법. (0) | 2023.02.15 |
| 스프링) 빌더 패턴 (1) | 2023.01.17 |
| 스프링)시큐리티 (0) | 2022.12.30 |