인프런 커뮤니티 질문&답변

yuyu409300님의 프로필 이미지
yuyu409300

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

회원 리포지토리 테스트 케이스 작성

이름중복

작성

·

219

0

회원가입 할 때 어차피 id값은 다르게 들어가니까

이름은 중복이 가능하도록 코드가 구현되어있는 건가요? 

답변 2

0

yuyu409300님의 프로필 이미지
yuyu409300
질문자

그럼 이름이 중복이 안되면

1. findByid처럼 바로 store.get(name) 이렇게 꺼내면 안되는 건가요??

 

2. findByid 메서드가 매개변수로 넘어온 아이디와 아이디가 동일한 member객체를 찾아서 반환해주는 것으로 이해했는데, 구현된 코드는 id값을 반환했는데 어떻게 

optional<Member>하고 한건가요ㅠㅠ?

id는 int아닌가요?

 

1. 저장소의 key는 Long 타입의 Id입니다.

name으로 찾으려면 강의에서 처럼 스트림으로 Map을 순회하여 해당하는 nam을 찾도록 해야합니다.

2.

findById와 findByName 의 반환타입은 Optional<Member>이며,

store.values().~.findAny()의 반환타입이 Optional<해당 스트림의 타입>이 되기 때문에 가능합니다.

id는 Long입니다.

0

안녕하세요. yuyu409300님, 공식 서포터즈 OMG입니다.

입문편 강의에서 Member객체는 id(식별자)와 name 필드만으로 구성되어 있습니다.

일반적인 사이트에서 진행하는 "아이디 중복확인" 기능을 name으로 진행 한 것으로 보시면 될 것 같아요.

생각하신 것 처럼 회원마다 id값은 다르게 들어가는게 맞습니다.


감사합니다.

yuyu409300님의 프로필 이미지
yuyu409300

작성한 질문수

질문하기