簡體   English   中英

使用 Spring 引導跳過分頁中的元素

[英]Skip elements in pagination with Spring Boot

我有一個在 spring 啟動中制作的后端應用程序,我想在前端加載,關於某個主題的評論,我加載這些評論分頁和排序,如果用戶只是滾動並獲得下一頁,它工作正常,但是有一個問題,用戶也可以發表評論,這些評論 go 在表格中,我們從中得到分頁評論發送到前端。 問題是,如果我得到兩頁,例如每頁有 10 條評論,然后發布一條評論,將 go 假設在第一頁的元素之間的某個位置,因為評論是排序的,那么插入評論之后的所有項目都會移動一個position,所以第三頁的第一個評論將是已經發送到前端的第二頁的最后一個元素,我得到了重復的評論。

Pageable pageable = PageRequest.of(page, 8, Sort.by("text").ascending());

List<Comment> commentsPage = commentsRepository.findAllByBookId(bookId, pageable);

@Repository 
public interface CommentsRepository extends JpaRepository<Comment, String> {
    List<Comment> findAllByBookId(String bookId, Pageable pageable);
}

為了解決這個問題,我想在前端記住添加了多少評論,當我要求下一頁指定他們跳過該數量的評論時,但我不知道該怎么做。

我是 java 和 spring 啟動的新手,如果有其他解決方案我可以解決這個問題,我願意接受建議。

您可以使用@CreationTimestamp 找出任何評論的創建時間,然后按升序對其進行排序

@CreationTimestamp
 private LocalDateTime createdAt;

Pageable paging = PageRequest.of(pageNo, pageSize, Sort.by("createdAt").ascending());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM