首頁 > 軟體

Mybatis 如何開啟控制檯列印sql語句

2022-11-28 22:01:56

springboot+mybatis整合過程中,開啟控制檯sql語句列印的多種方式:

方法一

1>(spring+mybatis)在mybatis的組態檔中新增

<settings>
    <!-- 列印sql紀錄檔 -->
    <setting name="logImpl" value="STDOUT_LOGGING" />
</settings>

mybatis的組態檔----mybatis-config.xml如下:

<?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>
        <!-- 列印sql紀錄檔 -->
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>
</configuration>

2> (springboot+mybatis)在springboot的組態檔----appcation.yml中新增

mybatis:
    configuration:
      log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

ps:

IDEA中,springboot預設組態檔是application.properties檔案,但是yml檔案在語法上更加簡潔,更有層次感,所以此處是用yml語法,properties中好像是這麼寫的:

mybatis.configuration.log-impl= org.apache.ibatis.logging.stdout.StdOutImpl

控制檯可以列印了。。。。。

方法二

在springboot+mybatis整合中,可以將springboot的組態檔新增如下一段也可:

logging:
  level:
    com.lucifer.springboot.cache.mapper: debug

ps:  com.lucifer.springboot.cache.mapper是包名 

方法三

如果你使用的是springboot+mybatis-plus的話:

  <dependency>
       <groupId>com.baomidou</groupId>
       <artifactId>mybatis-plus-boot-starter</artifactId>
       <version>3.3.1</version>
  </dependency>

application.yml: 

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

控制檯列印: 

JDBC Connection [HikariProxyConnection@1006460161 wrapping com.mysql.cj.jdbc.ConnectionImpl@37cccae8] will not be managed by Spring
==>  Preparing: SELECT id,user_name,age FROM user WHERE (user_name = ?) 
==> Parameters: 張三(String)
<==    Columns: id, user_name, age
<==        Row: 1, 張三, 18
<==      Total: 1

以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com