<noframes id="7xbfr"><pre id="7xbfr"><output id="7xbfr"></output></pre>

      <big id="7xbfr"><font id="7xbfr"><listing id="7xbfr"></listing></font></big>
        <p id="7xbfr"></p>
        <menuitem id="7xbfr"></menuitem>

          <video id="7xbfr"><mark id="7xbfr"><listing id="7xbfr"></listing></mark></video>
            <form id="7xbfr"></form>

          <delect id="7xbfr"><var id="7xbfr"></var></delect>

          mybatis結合log4j打印SQL日志的兩種方法

          時間:2022-09-27 21:49:25 類型:JAVA
          字號:    

            在使用mybatis進行開發的時候,由于可以動態拼接sql,這樣大大方便了我們。但是也有一定的問題,當我們動態sql拼接的塊很多的時候,我們要想從*mapper.xml中直接找出完整的sql就會非常的難,這個時候經常會需要把組合之后的完整sql打印出來。

              在 MyBatis 配置文件 mybatis-config.xml 里面添加一項 setting 來選擇其它日志實現,可選的值有:SLF4J、LOG4J、LOG4J2、JDK_LOGGING、COMMONS_LOGGING、STDOUT_LOGGING、NO_LOGGING,或者是實現了 org.apache.ibatis.logging.Log 接口,且構造方法以字符串為參數的類完全限定名。

            1.使用Mybatis的內置日志工廠打印sql日志

          <configuration>
              <settings>
                  <setting name="logImpl" value="STDOUT_LOGGING" />
              </settings>
          </configuration>

          實現效果如下:

          1.jpg

           2.  mybatis結合log4j打印SQL日志

          <configuration>
              <settings>
                  <setting name="logImpl" value="LOG4J" />
              </settings>
          </configuration>

              類路徑下建立loj4j.properties文件,配置內容如下:

          ### 設置Logger輸出級別和輸出目的地 ### debug更詳細,如果設為info那么打印出的表數據遇到字符串就不顯示,此外還有logfile
          log4j.rootLogger=debug,stdout
          
          ### 把日志信息輸出到控制臺 ###
          log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
          #log4j.appender.stdout.Target=System.err
          log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout 
          
          ### 把日志信息輸出到文件:jbit.log ###
          #log4j.appender.logfile=org.apache.log4j.FileAppender
          #log4j.appender.logfile.File=mybatis.log
          #log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
          #log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %F %p %m%n
          
          ###顯示SQL語句部分
          log4j.logger.com.mybatis=DEBUG
          #log4j.logger.com.mybatis.common.jdbc.SimpleDataSource=DEBUG
          #log4j.logger.com.mybatis.common.jdbc.ScriptRunner=DEBUG
          #log4j.logger.com.mybatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
          #log4j.logger.java.sql.Connection=DEBUG
          #log4j.logger.java.sql.Statement=DEBUG
          #log4j.logger.java.sql.PreparedStatement=DEBUG
          #log4j.logger.java.sql.ResultSet=DEBUG

          效果如下:

          2.jpg

          黄网站免费 <