使用DataSource-Proxy在Spring Boot中記錄SQL語句 - Vlad Mihalcea
在本文中,我將向您展示使用 Spring Boot 時記錄 SQL 語句的最佳方式。
記錄 SQL 查詢非常重要,因為它允許您驗證生成語句的數量、自動生成查詢的語法,以及證明JDBC 批處理按預期工作。
DataSource-Proxy是記錄 SQL 語句的最佳方式之一:由於它代理 JDBC DataSource,因此它可以記錄您可能與 Spring Boot 一起使用的任何資料訪問層技術的語句。即使您混合使用 JPA 和jOOQ,DataSource-Proxy 也會列印所有通過Connection代理的 JDBC 執行的 SQL 語句。
新增依賴:
<dependency> <groupId>com.github.gavlyukovskiy</groupId> <artifactId>datasource-proxy-spring-boot-starter</artifactId> <version>${ds-proxy-spring-boot-starter.version}</version> </dependency> |
當 Spring Boot 啟動時,它會建立一個DataSource供 JPA、Hibernate 或其他資料訪問技術使用。為了使用 DataSource-Proxy,我們需要允許應用程式使用這個代理替代預設的 JDBCDataSource。
現在 Spring Boot 可以列印由任何資料訪問技術生成的有意義的 SQL 語句:
Name:dataSource, Connection:5, Time:1, Success:True Type:Prepared, Batch:False, QuerySize:1, BatchSize:0 Query:[" SELECT u.id AS id1_7_, u.email AS email5_7_, u.external_id AS external6_7_, u.first_name AS first_na7_7_, u.last_name AS last_nam9_7_, FROM users u WHERE u.email = ? "] Params:[( john.doe@acme.com )] |
原文點選標題
相關文章
- 使用 Spring Transactional 註釋的最佳方式 - Vlad MihalceaSpring
- jsqlparser使用記錄---生成sql語句JSSQL
- SQL 搜尋方法或鍵集分頁 - Vlad MihalceaSQL
- spring-boot記錄sql探索SpringbootSQL
- sql 中的with 語句使用SQL
- 在JPA中請優先使用sequence策略生成實體識別符號的值 - Vlad Mihalcea符號
- 批處理最佳實踐 - Vlad Mihalcea
- 使用SQL語句去掉重複記錄的兩種方法SQL
- Spring Boot 記錄Spring Boot
- MySQL 記錄所有執行了的 sql 語句MySql
- 用SQL語句去掉重複的記錄SQL
- JMS 在 Spring Boot 中的使用Spring Boot
- 在事務中執行sql語句SQL
- 在nhibernate中執行SQL語句SQL
- 查詢orcale執行的SQL語句記錄SQL
- SQL語句筆記SQL筆記
- Java中如何解析SQL語句、格式化SQL語句、生成SQL語句?JavaSQL
- GOTO語句在PL/SQL中的應用GoSQL
- 關於在SAP中SQL語句的效能SQL
- 使用JPA和Hibernate呼叫儲存過程的最佳方法 - Vlad Mihalcea儲存過程
- Spring Boot 2 中如何使用 Log4j2 記錄日誌Spring Boot
- 一條Sql語句:取出表A中第31到第40記錄(面試題)SQL面試題
- 使用FlexyPool度量你的XA事務連線池合適大小 - Vlad MihalceaFlex
- 如何啟用Hibernate慢查詢日誌? -Vlad Mihalcea
- 什麼是單主資料庫複製? -Vlad Mihalcea資料庫
- JDBC驅動程式Maven依賴項大全列表 - Vlad MihalceaJDBCMaven
- 學習記錄Spring Boot 記錄配置細節Spring Boot
- 在Spring Boot中使用CommonsRequestLoggingFilter記錄傳入的請求Spring BootFilter
- 一條SQL語句在MySQL中如何執行的MySql
- Spring Boot(十一):Spring Boot 中 MongoDB 的使用Spring BootMongoDB
- Spring Boot(三):Spring Boot 中 Redis 的使用Spring BootRedis
- 經典入門教程:在ASP中使用SQL 語句SQL
- spring-boot-route(十七)使用aop記錄操作日誌Springboot
- 用SQL語句刪除重複記錄的四種方法SQL
- Oracle 查詢並刪除重複記錄的SQL語句OracleSQL
- 利用sql語句找出表中有重複記錄的三種sql寫法SQL
- 【AWR】通過AWR報告中記錄的 SQL Id獲得SQL語句的執行計劃SQL
- 在 Spring Boot 中使用 RedisSpring BootRedis