2016-02-22 81 views
0

我想根據我的偏移值獲取行數據 - 第一個請求偏移值=(0-100)意味着100 第二個請求將偏移量傳遞爲101-200行?Spring:data Cassandra如何根據offset [行數]值返回行數據?

我repository-

@Query("select * from customer_request where product_id = ?0 and receipt_period = ?1 limit ?2 ") 
List<CustomerRequest> findByProduct(String productId, String datePeriod, Integer offset); 

如何申請行的具體數目?

我可以使用stmt.setFetchSize(100);像這樣?如果是的話,請告訴我該怎麼做?

我使用data.cassandra.version = 1.3.0.RELEASE & datastax.version> 2.1.7

我很新的這春數據卡桑德拉。我更新了我的存儲庫,但出現了很多錯誤!在查詢之前是否需要與Cassandra創建會話?當我堅持一點時,請告訴我我的實施情況。

Statement stmt = new SimpleStatement("select * from customer_request where product_id = ?0 and receipt_period = ?1"); 
List<CustomerRequest> findByProductIdAndReceiptPeriod(String productId, String receiptPeriod); 

stmt.setFetchSize(100) 
ResultSet rs = session.execute(stmt); 

Iterator<Row> iter = rs.iterator(); 
{ 
    rs.fetchMoreResults(); 
    Row row = iter.next(); 
} while (!rs.isFullyFetched()) 

任何幫助或建議?

回答

0

我不確定你使用的是什麼版本,但你可以看看在Java驅動程序中使用分頁。看看下面的鏈接,看看如何:

https://datastax.github.io/java-driver/2.1.7/features/paging/

+0

嗨,U這裏分享的鏈接,你能告訴我whtat我需要牛逼通過這裏 - 字符串requestedPage = extractPagingStateStringFromURL(); ?? – JOGO