From 7c40882e26fee15bf3ba17a11974e042b3683a02 Mon Sep 17 00:00:00 2001 From: hanseungyuun Date: Sat, 19 Apr 2025 18:09:42 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EC=9D=B4=EB=A9=94=EC=9D=BC=20=EC=A4=91?= =?UTF-8?q?=EB=B3=B5=20=EA=B2=80=EC=A6=9D=20=EB=B0=8F=20=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20=EA=B2=80=EC=A6=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cnu/mvc/domain/member/MemberRepository.java | 5 ++++- src/main/java/cnu/mvc/domain/member/MemberService.java | 10 +++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/main/java/cnu/mvc/domain/member/MemberRepository.java b/src/main/java/cnu/mvc/domain/member/MemberRepository.java index 1b273fc..e2a45c5 100644 --- a/src/main/java/cnu/mvc/domain/member/MemberRepository.java +++ b/src/main/java/cnu/mvc/domain/member/MemberRepository.java @@ -22,7 +22,10 @@ public Member findById(Long id) { // 구현 public Member findByEmail(String email) { - return null; + return store.values().stream() + .filter(member -> member.getEmail().equals(email)) + .findFirst() + .orElse(null); } } diff --git a/src/main/java/cnu/mvc/domain/member/MemberService.java b/src/main/java/cnu/mvc/domain/member/MemberService.java index b8e785e..8d494a8 100644 --- a/src/main/java/cnu/mvc/domain/member/MemberService.java +++ b/src/main/java/cnu/mvc/domain/member/MemberService.java @@ -10,11 +10,19 @@ public class MemberService { private final MemberRepository memberRepository; public Member join(Member member){ + // 이메일 중복 검사 + Member findMember = findByEmail(member.getEmail()); + if (findMember != null) { + throw new IllegalStateException("이미 존재하는 이메일 계정입니다."); + } return memberRepository.save(member); } public Member validateMember(String email, String pwd) { - Member findMember = findById(1L); + Member findMember = findByEmail(email); + if (findMember == null || !findMember.getPwd().equals(pwd)) { + throw new IllegalStateException("이메일 또는 비밀번호를 확인해주세요."); + } return findMember; }