힌트 1) spring jpa localtime between 라고 구글링해보세요.
힌트2) 지금은 LocalDateTime.now(), 하루 전은 LocalDateTime.now().minusDays(1) 입니다.
public interface MemoRepository extends JpaRepository<Memo, Long> {
List<Memo> findAllByOrderByModifiedAtDesc();
}
기존의 생성시간 기준으로 최신 게시물을 내림차순으로 정렬하는 메모에서
public interface MemoRepository extends JpaRepository<Memo, Long> {
List<Memo> findAllByModifiedAtBetweenOrderByModifiedAtDesc(LocalDateTime start, LocalDateTime end);
}
findAll : 모두 찾아라
ByModifiedAtBetween : 수정된 시간들 사이(start, end)에서
OrderByModifiedAtDesc : 시간을 기준으로 내림차순
@GetMapping("/api/memos")
public List<Memo> readMemo() {
return memoRepository.findAllByOrderByModifiedAtDesc();
}
원래 이거에서 Repository가 바뀌었으니
@GetMapping("/api/memos")
public List<Memo> readMemo() {
return memoRepository.findAllByModifiedAtBetweenOrderByModifiedAtDesc(LocalDateTime.now().minusDays(1), LocalDateTime.now());
}
오류가 생기지 않는거로 봐선 이 형식도 문제없을거 같지만...
답지는 아래와 같다.
@GetMapping("/api/memos")
public List<Memo> getMemos() {
LocalDateTime start = LocalDateTime.now().minusDays(1);
LocalDateTime end = LocalDateTime.now();
return memoRepository.findAllByModifiedAtBetweenOrderByModifiedAtDesc(start, end);
}