log4j2打印jdbcTemplate的sql以及参数

Posted liangwp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了log4j2打印jdbcTemplate的sql以及参数相关的知识,希望对你有一定的参考价值。

在log4j2.xml加上这两个logger即可:

<Logger name="org.springframework.jdbc.core" level="debug"/>
<Logger name="org.springframework.jdbc.core.StatementCreatorUtils" level="trace"/>

 

Logger解释:

org.springframework.jdbc.core包下面的所有类,输出debug级别的日志
其中,org.springframework.jdbc.core包下面的StatementCreatorUtils类,输出trace级别的日志

 

打印的内容:

2018-10-10 15:52:16.458 DEBUG 45116 --- [e-nio-81-exec-5] o.s.j.c.JdbcTemplate                     : Executing prepared SQL statement [select * from t_user where username = ? and state = ?]
2018-10-10 15:52:16.459 TRACE 45116 --- [e-nio-81-exec-5] o.s.j.c.StatementCreatorUtils        : Setting SQL statement parameter value: column index 1, parameter value [admin], value class [java.lang.String], SQL type unknown
2018-10-10 15:52:16.459 TRACE 45116 --- [e-nio-81-exec-5] o.s.j.c.StatementCreatorUtils        : Setting SQL statement parameter value: column index 2, parameter value [1], value class [java.lang.Integer], SQL type unknown

 

打印内容解释:

第一行是sql,值为select * from t_user where username = ? and state = ?
第二行是sql的第一个参数,值为admin,Java类型为String,sql类型为未知
第三行是sql的第二个参数,值为1,Java类型为Integer,sql类型为未知

 

以上是关于log4j2打印jdbcTemplate的sql以及参数的主要内容,如果未能解决你的问题,请参考以下文章

jdbctemplate打印sql

spring boot+logback+JdbcTemplate打印sql日志

spring JdbcTemplate 利用 Log4j 在控制台打印出SQL语句、参数

“spring JdbcTemplate”怎么利用Log4j在控制台打印出SQL语句、参数?

log4j2怎样配置才能在控制台打印mybatis的sql日志

log4j2日志不打印排查过程及处理