Optional을 사용하면 예상치 못한 NullPointerException 예외를 제공되는 메소드로 간단히 회피할 수 있다.
즉, 복잡한 조건문 없이도 널(null) 값으로 인해 발생하는 예외를 처리할 수 있게 됩니다.
결과적으는 반환값 없음 을 듯하며 null을 반환하면서 발생되는 오류를 줄이고자하기 위해서 만들었다고 한다.
오류를 야기시키질 수 있는 메서드 반환타입입니다.
그렇게 하여 isPresent() 메서드를 사용하게 됩니다.
Boolean 타입
Optional 객체가 값을 가지고 있다면 true, 값이 없다면 false 리턴
username을 조회 후 user.isPresent() 메소드 사용
값을 가지고 있으면 true "중복된 사용자가 존재합니다" 출력
Void 타입
ifPresent()는 Optional 객체가 값을 가지고 있으면 실행 값이 없으면 넘어감
findById는 jpa에서 기본으로 제공하는 Optional 타입의 메소드
idx로 해당 idx를 가지고 있는 user 정보 확인
조회 시 값이 있으면 예외 발생
isPresent() 메소드 = true, false 체크
ifPresent() 메소드 = 값을 가지고 있는지 확인 후 예외처리