728x90
코틀린에서의 Optional
Optional은 자바에서 null 관련 처리를 해주기 위해 등장하였습니다.
그러나 코틀린에서는 nullable 타입을 따로 처리하므로 Optional을 사용할 필요가 없습니다.
예를 들어 Optional.orElse() 등은 엘비스 연산자를 통해 대체할 수 있습니다.
ifPresent도 let을 통해 대체할 수 있습니다.
따라서 코틀린에서는 Optional을 잘 사용하지 않습니다.
코틀린을 위한 JPA 확장 함수
findById 메서드는 Optional을 반환합니다.
코틀린에서는 Optional을 사용하지 않기 위해 findByIdOrNull 이라는 확장함수를 제공합니다.
다음과 같이 사용할 수 있습니다.
메서드를 추가하는 경우
반환 타입을 Nullable 타입으로만 설정해주면 됩니다.
반환 타입을 위 사진처럼 설정하여 Optional을 사용하지 않고도 Null 처리를 해줄 수 있습니다.
Reference
https://hwanchang.tistory.com/9?category=481114
https://spring.io/guides/tutorials/spring-boot-kotlin/
728x90
'코틀린 > JPA' 카테고리의 다른 글
[JPA] 코틀린에서 @OneToMany 사용시 발생하는 오류 (0) | 2022.07.23 |
---|---|
[JPA] 코틀린에서 지연로딩이 작동되지 않을 때 (0) | 2022.07.23 |