《Spring Data 官方文檔》5.8. 使用自定義轉換器重載默認映射至5.10. 異常解釋
5.8. 使用自定義轉換器重載默認映射
為了對映射過程有更細粒度的控製,你可以使用’CassandraConverter’實現來注冊Spring轉換器,例如’MappingCassandraConverter’。
“MappingCassandraConverter”檢查是否有任何Spring轉換器可以在這些特殊類試圖映射自身對象之前處理。 為了’hijack’ MappingCassandraConverter’的正常映射策略,或許為了提高性能或其他自定義映射需求,您首先需要創建一個Spring’Converter’接口的實現,然後將它注冊到MappingConverter。
有關Spring類型轉換服務的更多信息請點擊這裏查看參考文檔. |
5.9. 執行命令
5.9.1. 執行命令的方法
CassandraTemplate 有許多execute () 和 executeAsync()的重載方法。 傳入您希望執行的CQL命令,並處理相應的響應。
此示例使用基礎的Spring Data Cassandra附帶的AsynchronousQueryListener類。 所有相關選項請參閱API文檔。 在這裏,你不能使用在Cassandra中的execute()和executeAsync()方法執行任何操作。
cassandraOperations.executeAsynchronously("delete from person where id = '123123123'",
new AsynchronousQueryListener() {
public void onQueryComplete(ResultSetFuture rsf) {
LOG.info("Async Query Completed");
}
});
此示例顯示如何使用不同的API對象創建和刪除表,並傳遞對象作為參數給execute()方法。
cassandraOperations.execute("create table test_table (id uuid primary key, event text)");
DropTableSpecification dropper = DropTableSpecification.dropTable("test_table");
cassandraOperations.execute(dropper);
5.10. 異常解釋
Spring框架為各種數據庫和映射技術提供異常轉換。 傳統上是用於JDBC和JPA。 對Cassandra的Spring支持通過提供“org.springframework.dao.support.PersistenceExceptionTranslator”接口的實現將此功能擴展到Cassandra數據庫。
映射到Spring的一致性數據訪問異常層次結構的動機是,您可以編寫可移植和可描述的異常處理代碼,而無需借助於針對Cassandra異常的編碼。Spring的所有數據訪問異常都是從“DataAccessException”類繼承而來的,所以你可以確保你能夠在一個try-catch塊中捕獲所有與數據庫相關的異常。
最後更新:2017-05-19 11:31:51