강의

멘토링

커뮤니티

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

David Byun님의 프로필 이미지
David Byun

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

회원 가입

getLoginId() 함수가 어떻게 동작하는지 궁금합니다

작성

·

433

0

강의에서 getLoginId()를 정의한적이 없는데,

갑자기 어떻게 동작하는지 궁금합니다.

 

public class MemberRepository {

    private static Map<Long, Member> store = new HashMap<>(); //static 사용
    private static long sequence = 0L; //static 사용

    public Member save(Member member) {
        member.setId(++sequence);
        log.info("save: member={}", member);
        store.put(member.getId(), member);
        return member;
    }

    public Member findById(Long id) {
        return store.get(id);
    }

    public List<Member> findAll() {
        return new ArrayList<>(store.values());
    }

    public Optional<Member> findByLoginId(String loginId) {
//        List<Member> all = findAll();
//        for (Member m : all) {
//            if (m.getLoginId().equals(loginId)) {
//                return Optional.of(m);
//            }
//        }
//        return Optional.empty();
        return findAll().stream().filter(m -> m.getLoginId().equals(loginId)).findFirst();
    }
}

답변 1

1

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

올리신 코드

public class MemberRepository {

    private static Map<Long, Member> store = new HashMap<>(); //static 사용
    private static long sequence = 0L; //static 사용

    public Member save(Member member) {
        member.setId(++sequence);
        log.info("save: member={}", member);
        store.put(member.getId(), member);
        return member;
    }

    public Member findById(Long id) {
        return store.get(id);
    }

    public List<Member> findAll() {
        return new ArrayList<>(store.values());
    }

    public Optional<Member> findByLoginId(String loginId) {
//        List<Member> all = findAll();
//        for (Member m : all) {
//            if (m.getLoginId().equals(loginId)) {
//                return Optional.of(m);
//            }
//        }
//        return Optional.empty();
        return findAll().stream().filter(m -> m.getLoginId().equals(loginId)).findFirst();
    }
}

강의코드

image

getLoginId()는 Member클래스의 loginId필드와 롬복의 @Data필드로 인해 생성됩니다.


.
감사합니다.

David Byun님의 프로필 이미지
David Byun

작성한 질문수

질문하기