여러 가지 경우의 수에 대응해야 하는 메시지 조회 API에 대한 이야기입니다 동적 쿼리를 작성하는 부분을 리팩터링한 내용을 기록해봅니다 시나리오 채널에 최초 접속 시, 채널 아이디를 전달하면 해당 채널의 가장 최신 메시지 20개를 시간 내림차순 정렬해서 반환 아래로 스크롤 내리면 채널 아이디, 메시지 아이디를 전달받아 해당 채널의 해당 메시지 아이디의 작성시간 보다 과거에 작성된 메시지 20개를 시간 내림차순 정렬해서 반환 날짜로 이동하면 채널 아이디, 날짜를 전달받아 해당 채널의 해당 날짜의 23:59:59 보다 과거에 작성된 메시지 20개를 시간 내림차순 정렬해서 반환 날짜로 이동 후 위로 스크롤을 옮길 시 (이동된 날짜 이후에 작성된 메시지를 보려 하면) 채널 아이디, 메시지 아이디, needPas..
JpaRepository를 상속하지 않는 이유 라는 최범균님의 영상을 보고 포스팅해봅니다. extends JpaRepository public interface MemberRepository extends JpaRepository { } Jpa를 학습한 이후로 한 번도 JpaRepository 이외의 인터페이스를 확장해서 사용해본 적이 없었는데요, 최근 최범균님의 JPA 영상을 보다가 Repository 상속을 선호한다는 말씀을 접하게 되었습니다. 왜 그러한지에 대해서도 간명하게 친절하게 설명해주셔서 큰 도움이 되었습니다. 팀 프로젝트 동료들에게도 이 내용에 대해 공유해보았는데요, 모두들 공감해주어서 프로젝트에서도 Repository 상속을 사용하게 되었습니다. 그럼 왜 JpaRepository가 아닌 ..