標籤:想法 resultset defaults imp default ble 嵌套 注釋 time
在前台請求資料的時候,sql語句一直都是列印到控制台的,有一個想法就是想讓它列印到日誌裡,該如何做呢?
見下面的mybatis設定檔:
[html] view plain copy print?
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
- <configuration>
- <!-- 設定運行參數 -->
- <settings>
- <!-- 全域對應器啟用緩衝 -->
- <setting name="cacheEnabled" value="true" />
- <!-- 查詢時,關閉關聯對象及時載入以提高效能 -->
- <setting name="lazyLoadingEnabled" value="false" />
- <!-- 設定關聯對象載入的形態,此處為按需載入欄位(載入欄位由SQL指定),不會載入關聯表的所有欄位,以提高效能 -->
- <setting name="aggressiveLazyLoading" value="false" />
- <!-- 對於位置的SQL查詢,允許返回不同的結果集以達到通用的效果 -->
- <setting name="multipleResultSetsEnabled" value="true" />
- <!-- 允許使用欄標籤代替列明 -->
- <setting name="useColumnLabel" value="true" />
- <!-- 允許使用自訂的主索引值(比如由程式產生的UUID 32位編碼作為索引值), 資料表的pk建置原則將被覆蓋 -->
- <setting name="useGeneratedKeys" value="true" />
- <!-- 給予被嵌套的resultMap以欄位-屬性的映射支援 -->
- <setting name="autoMappingBehavior" value="PARTIAL" />
- <!-- 對於批次更新操作緩衝SQL以提高效能 -->
- <setting name="defaultExecutorType" value="REUSE" />
- <!-- 資料庫超過25000秒仍未響應則逾時 -->
- <setting name="defaultStatementTimeout" value="25000" />
- <!-- 列印查詢語句 -->
- <!-- <setting name="logImpl" value="STDOUT_LOGGING" /> -->
- </settings>
- </configuration>
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <!-- 設定運行參數 --> <settings> <!-- 全域對應器啟用緩衝 --> <setting name="cacheEnabled" value="true" /> <!-- 查詢時,關閉關聯對象及時載入以提高效能 --> <setting name="lazyLoadingEnabled" value="false" /> <!-- 設定關聯對象載入的形態,此處為按需載入欄位(載入欄位由SQL指定),不會載入關聯表的所有欄位,以提高效能 --> <setting name="aggressiveLazyLoading" value="false" /> <!-- 對於位置的SQL查詢,允許返回不同的結果集以達到通用的效果 --> <setting name="multipleResultSetsEnabled" value="true" /> <!-- 允許使用欄標籤代替列明 --> <setting name="useColumnLabel" value="true" /> <!-- 允許使用自訂的主索引值(比如由程式產生的UUID 32位編碼作為索引值), 資料表的pk建置原則將被覆蓋 --> <setting name="useGeneratedKeys" value="true" /> <!-- 給予被嵌套的resultMap以欄位-屬性的映射支援 --> <setting name="autoMappingBehavior" value="PARTIAL" /> <!-- 對於批次更新操作緩衝SQL以提高效能 --> <setting name="defaultExecutorType" value="REUSE" /> <!-- 資料庫超過25000秒仍未響應則逾時 --> <setting name="defaultStatementTimeout" value="25000" /> <!-- 列印查詢語句 --> <!-- <setting name="logImpl" value="STDOUT_LOGGING" /> --> </settings></configuration>
[html] view plain copy print?
- <setting name="logImpl" value="STDOUT_LOGGING" />
<setting name="logImpl" value="STDOUT_LOGGING" />
就是這一句!
如果將它注釋,你的sql就可以列印進日誌
如果將它放開,你的sql就列印到了控制台
那springboot中是如何配置日誌列印呢?大家可以參考另一篇文章:
springboot中使用logback列印日誌
springboot整合mybatis將sql列印到日誌(轉)