From 906acb2c58bb7051bf0753a53989f56629b0af0d Mon Sep 17 00:00:00 2001 From: turru120 Date: Wed, 16 Apr 2025 23:50:17 +0900 Subject: [PATCH] =?UTF-8?q?202201291-=EA=B9=80=EC=84=A0=EC=A7=84=20?= =?UTF-8?q?=EA=B3=BC=EC=A0=9C=EC=A0=9C=EC=B6=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cnu/mvc/domain/member/MemberRepository.java | 7 +++++-- src/main/java/cnu/mvc/domain/member/MemberService.java | 10 ++++++++-- 2 files changed, 13 insertions(+), 4 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..64ec85b 100644 --- a/src/main/java/cnu/mvc/domain/member/MemberRepository.java +++ b/src/main/java/cnu/mvc/domain/member/MemberRepository.java @@ -20,9 +20,12 @@ public Member findById(Long id) { return store.get(id); } - // 구현 public Member findByEmail(String email) { + for(Member member : store.values()) { + if(member.getEmail().equals(email)) { + return member; + } + } return 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..12b2350 100644 --- a/src/main/java/cnu/mvc/domain/member/MemberService.java +++ b/src/main/java/cnu/mvc/domain/member/MemberService.java @@ -10,11 +10,18 @@ public class MemberService { private final MemberRepository memberRepository; public Member join(Member member){ + if (findByEmail(member.getEmail()) != 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; } @@ -26,5 +33,4 @@ public Member findById(Long id) { public Member findByEmail(String email) { return memberRepository.findByEmail(email); } - }