2015-04-12 28 views
2

在春天的數據文件,它說:春數據卡桑德拉計數器更新

CassandraTemplate是尋找訪問的功能,如增加計數器或臨時CRUD操作的地方。

我想在spring-data-cassandra中使用CassandraTemplate更新計數器,但是關於此主題的文檔非常稀少。這是否有一個很好的例子?

回答

2

我還沒有發現任何很好的例子都不是,而是從CassandraTemplate/CqlTempleate源,代碼應該是這樣的:

Update updateOp = QueryBuilder.update(cassandraOperations.getTableName(MyMapped.class).toCql()); 
     updateOp.with(QueryBuilder.incr("my_count_column")) 
         .where(QueryBuilder.eq(...)); // Primary key clause 
cassandraOperations.execute(updateOp); 
1

您也可以使用自定義@Query更新計數器值。

例如,假設你有一些倉庫:

public interface SomeRepository extends CassandraRepository<SomeEntity> { 

@Query("update some_table SET counter=counter+1 WHERE value1 = ?0 AND value2= ?1;") 
Object updateCounterValue(String value1, String value2);} 

當然你也可以參數化的價值被更新。