

package izero.hellospring.service;
import izero.hellospring.domain.Member;
import izero.hellospring.repository.MemberRepository;
import izero.hellospring.repository.MemoryMemberRepository;
import java.util.Optional;
public class MemberService {
private final MemberRepository memberRepository = new MemoryMemberRepository();
/**
* 회원가입
*/
public Long join(Member member){
Optional<Member> result = memberRepository.findByName(member.getName());
result.ifPresent(m -> {
throw new IllegalStateException("이미 존재하는 회원입니다.");
});
memberRepository.save(member);
return member.getId();
}
}
Optional에 이미 다양한 기능 있어서 그 중 ifPresent를 사용한 것.
Member 객체에 이미 있을 때 이미 존재하는 회원이라는 메시지 반환.
없으면 memberRepository에 저장
근데 저 Optional 단을

이렇게 줄여버리는 게 훨 간단함
