- 스프링 프레임워크5에 추가된 기능
- 컴파일 타임에 최대한 널타임익셉션을 막는 것이다.
- 애노테이션을 이용해서 널을 허용하지 않겠다고 선언 후 에디터의 도움을 받아 방지
public class EventService {
@NonNull
public String createEvent(@NonNull String name) {
return "hello " + name
}
}
- 인자 값과 리턴 값에 null을 허용 하지 않음
@NonNull
애노테이션을 사용
- intellij에서 설정 필요
- Compiler
- Add runtime ass ... configuration
- 재시작
null 관련 애노테이션
- @NonNull
- @Nullable
- @NonNullApi (패키지 레벨 설정)
- @NonNullFields (패키지 레벨 설정)
- 아래 두개는 package-info.java 파일에 설정하면 그 패키지 이하의 모든 리턴과 파라미터에 적용하는 것과 같음