java - 如何查看在 Spring boot 中使用 Cassandra 时生成的 CQL
问题描述
使用类型的构造时
public interface TableNameDAO extends CrudRepository<TableNameModel, String> {
List<TableNameModel> findAll();
}
执行时如何在 spring-boot 应用程序的控制台中查看生成的 CQL 查询?
谢谢
解决方案
CQL 语句按CqlTemplate
级别DEBUG
记录。将记录器org.springframework.data.cassandra.core.cql
(Spring Data Cassandra 2.0 及更高版本,org.springframework.cassandra.core
用于 Spring Data Cassandra 1.5.x)设置为DEBUG
将报告所有执行的语句:
2018-08-13 11:00:31,468 DEBUG | main | org.springframework.data.cassandra.core.cql.CqlTemplate | Executing CQL Statement [UPDATE user SET a = 'b';] |
或者,您可以在以下位置注册查询记录器Cluster
:
Cluster cluster = …;
cluster.register(QueryLogger.builder().build());
的日志输出QueryLogger
记录到记录器,如com.datastax.driver.core.QueryLogger.NORMAL
级别DEBUG
。
推荐阅读
- java - 无法使用 SSL 运行 Spring Boot 应用程序
- node.js - 如何从打包的 Electron 应用程序运行可执行文件
- laravel - “laravel homestead vagrant up 错误”
- selenium - 无法将对象实例从 conftest.py 传递给测试类
- cesium - 在 CesiumJS 中切换 mixin
- python-3.x - 在纽约市地图上绘制计数数字+按社区组的颜色代码
- highcharts - 在图表区域内渲染 html 滑块
- c++ - 为什么我会在屏幕上显示一半的三角形?
- neo4j - 返回与具有特定属性的其他节点的连接最多的节点
- c# - C#:如何序列化/反序列化 EventBookmark 类的对象