isPresent() ์ฌ์ฉ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
private Member getMemberIfExists() {
// ์ด๋ฏธ ์์ฑ๋์ด ์๋ SecurityUtil์ getCurrentUsername()๋ฅผ ๊ฐ์
๋ ์ด๋ฉ์ผ์ธ์ง ๊ฒ์ฆํ๊ธฐ ์ํด ์ฌ์ฉ
Optional<String> emailOptional = SecurityUtil.getCurrentUsername();
if (emailOptional.isPresent()) { // ๊ฐ์ฒด ์กด์ฌ์ฌ๋ถ๋ฅผ ํ์ธ
String email = emailOptional.get();
Optional<Member> memberOptional = memberRepository.findByEmail(email);
// ๊ฐ์
ํ ๋ฉค๋ฒ๊ฐ ์๋ ๊ฒฝ์ฐ2 : ๋น์ด ์์ ๋
if (memberOptional.isEmpty()) {
throw new MemberInfoNotExistException();
} else return memberOptional.get();
// ๊ฐ์
ํ ๋ฉค๋ฒ๊ฐ ์๋ ๊ฒฝ์ฐ1 : ์กด์ฌํ์ง ์์ ๋
} else throw new MemberInfoNotExistException();
}
orElseThrow() ์ฌ์ฉ
1
2
3
4
5
6
7
8
9
10
private Member getMemberIfExists() {
// ํ์ฌ ๋ก๊ทธ์ธํ ์ฌ๋์ด ์์ ๊ฒฝ์ฐ ํด๋น ํ์์ email์ ๊ฐ์ ธ์จ๋ค.
String email = SecurityUtil.getCurrentUserEmail().orElseThrow(()
-> new MemberInfoNotExistException());
// mysql์์ ํด๋น email์ ๊ฐ์ง ํ์์ด ์์ ๊ฒฝ์ฐ ์์ธ๋ฐ์, ์์ผ๋ฉด ํ์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์จ๋ค.
return memberRepository.findByEmail(email).orElseThrow(()
-> new MemberInfoNotExistException());
}
๋๋ค๋ก ๋ณ๊ฒฝ
1
2
3
4
5
6
7
8
private Member getMemberIfExists() {
// ํ์ฌ ๋ก๊ทธ์ธํ ์ฌ๋์ด ์์ ๊ฒฝ์ฐ ํด๋น ํ์์ email์ ๊ฐ์ ธ์จ๋ค.
String email = SecurityUtil.getCurrentUserEmail().orElseThrow(MemberInfoNotExistException::new);
// mysql์์ ํด๋น email์ ๊ฐ์ง ํ์์ด ์์ ๊ฒฝ์ฐ ์์ธ๋ฐ์, ์์ผ๋ฉด ํ์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์จ๋ค.
return memberRepository.findByEmail(email).orElseThrow(MemberInfoNotExistException::new);
}