Error & Fix
JPA Repository 호출 시 NullPointerException 해결방법
wakestand
2022. 7. 24. 18:28
반응형
java.lang.NullPointerException: Cannot invoke "com.sample.repository.SampleRepository.findById(Object)" because "this.sampleRepository" is null
JPA에서 Interface Repository를 호출해서
쿼리를 수행하려고 하는데
위와 같이
Cannot invoke "repository.메소드명()" because "this.repository" is null
에러가 발생하는 경우에는
생성자 주입이 되지 않은 경우라
lombok의 @RequiredArgsConstructor
을 사용해주면 해결되는데
클래스 위에 @RequiredArgsConstructor
어노테이션을 달아준 후
repository 클래스 선언 시
접근자를 final로 선언해주면 끝이다
(final로 선언해야 Lombok이 작동함)
예제 코드로 보자면 아래와 같다
@RequiredArgsConstructor
public class Sample {
final SampleRepository sampleRepository;
public void test() {
sampleRepository.findAll();
}
}
반응형