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

wjddjs21님의 프로필 이미지

작성한 질문수

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

35강. 책 대출/반납 기능 리팩토링과 지연 로딩

궁금한점 있습니다

23.09.14 20:14 작성

·

202

1

안녕하세요 강사님 궁금한것이 있어서 질문 남깁니다

public void returnBook(String bookName) { UserLoanHistory targetHistory = this.userLoanHistories.stream() .filter(history -> history.getBookName().equals(bookName)) .findFirst() .orElseThrow(IllegalAccessError::new); //findFist()는 옵셔널로 반홚나다 targetHistory.doReturn(); }

이 로직에서 만약 한 책을 빌렸다가 반납하면 그 히스토리를 반납완료 상태로 만들어주고 끝내고

다시 그 책을 빌리려고 한다면 새로운 히스토리를 만들어서 List에 저장할텐데 그럼 다시 그책을 반납할 경우 findFirst()를 해서 그 히스토리를 찾아왔을때 이미 반납된 책을 다시 반납하는 행위가 되는것이 아닌건지 궁금해서 질문 드립니다!

답변 1

0

최태현님의 프로필 이미지
최태현
지식공유자

2023. 09. 14. 23:50

안녕하세요!! wjddjs21님~~ 크으~~~ 꼼꼼하게 봐주시고 좋은 질문 남겨주셔서 정말 감사드립니다! 😊😊

결론부터 말씀드리면, wjddjs21님께서 말씀해주신 내용이 맞습니다!

 

해결 방법으로는 가장 최신 순서로 정렬을 추가해 주는 방법이 있어요!!

 

비슷한 결의 질문으로

도 함께 확인해주시면 감사드리겠습니다!!!

 

좋은 질문 너무너무 감사합니다! 😊🙇

wjddjs21님의 프로필 이미지

작성한 질문수

질문하기