안녕하세요.
오늘은 의존성 주입을 했지만 NullPointerException 에러가 나오는 이유를 알아보려해요
원인
1. @service 어노테이션이 없다.
클래스 이름이 NoramlUtil 이구요
위에 @Service 어노테이션을 이용해서 Bean 등록을 해주어야해요
원인 ( 제 경우 )
2. NoramlUtil 클래스를 호출한 상위 클래스에서 NoramlUtil 클래스를 new 로 생성하여 호출했다.
빨간 네모 박스안에 보이시나요?
NormalUtil 클래스를 객채로 생성하여 사용하고 있어요.
그런데 이렇게 사용해버리면 spring bean 에 등록이 된 상태가 아니기 때문에 NormalUtil 도 못찾고
NormalUtil 안에서 다른 클래스들을 Autowired 로 선언해도 어차피 NormalUtil 이 bean 등록이 안되어서 소용이 없는 것이었어요
그래서 아래처럼 의존성주입을 해야해요
빨간 박스처럼요
의존성 주입은 프로젝트마다 다르기 때문에 위의 방법 보다는
클래스를 new 생성자보다 의존성 주입해서 사용하자! 라고 생각하면 될 것 같아요
반응형
'개발' 카테고리의 다른 글
플러터 Android sdkmanager not found. Update to the latest Android SDK and ensure that the cmdline-tools are installed toresolve this. 오류 해결 (0) | 2021.10.25 |
---|---|
window 인텔리제이 tomcat 설치 및 설정하기 (0) | 2021.10.21 |
인텔리제이 메뉴 글씨크기 키우기 (0) | 2021.10.19 |
github 학생인증 받기 (0) | 2021.10.19 |
윈도우11에 자바8 설치하기 (0) | 2021.10.19 |