객체에 Null을 담지 않도록 하자. 담아도 되는데 그 객체는 다시한번 쳐다보자.
제임스 고슬링 아저씨의 10억불짜리 실수인 Null은 항상 체크해야한다.
위 코드에서 만약 request가 null이면 NPE가 뜬다.
1. @NonNull Annotation
이거쓰면 위처럼 if문 걸어서 예외처리 안해도 된다.
NonNull Annotation은 3군데 붙을 수 있는데 아래와 같다.
1. 파라미터에 NonNull Annotation을 줬기에 메서드 호출 시점에 Exception이 처리된다.
따라서 아래 if문은 없어도 된다.
2. 프로퍼티에 NonNull이 있다. 이 프로퍼티는 Null이 될 수 없는 프로퍼티가 된 것이다.
3. Method는 NonNull이기에 Null을 리턴할 수 없다.
2. @Nullable Annotation
자바에선 primitive한 타입이 아니면 전부 NULL을 담을 수 있다. 따라서 전부 Nullable한 것이다.
항상 Null Check를 수행하도록 경고할 수 있는 어노테이션이다.
https://fastcampus.co.kr/dev_online_spring
'Back > Spring' 카테고리의 다른 글
Spring Web Layer(Dto?, Dao?) (0) | 2022.03.28 |
---|---|
테스트코드 (0) | 2022.03.14 |
[Spring] SpEL(Spring Expression Language) (0) | 2022.02.08 |
[Spring] Resource (0) | 2022.02.08 |
[Spring] Validation, Data Binding (0) | 2022.02.08 |
댓글