扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这个是我现在项目里面用的 你试看:
成都创新互联公司专注于达孜企业网站建设,响应式网站,商城开发。达孜网站建设公司,为达孜等地区提供建站服务。全流程按需网站设计,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
log4j.rootLogger=DEBUG,Console,File
#log4j.rootLogger=INFO,Console,File
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
#log4j.appender.Console.layout.ConversionPattern=[%c]%m%n
log4j.appender.File.layout.ConversionPattern=%d %t %p [%c{1}] %L %m%n"
log4j.appender.File=org.apache.log4j.RollingFileAppender
log4j.appender.File.File=mybatis.log
log4j.appender.File.MaxFileSize=10MB
log4j.appender.File.Threshold=ALL
log4j.appender.File.layout=org.apache.log4j.PatternLayout
#log4j.appender.File.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH\:mm\:ss,SSS}][%c]%m%n
log4j.appender.File.layout.ConversionPattern=%d %t %p [%c{1}] %L %m%n"
用的是maven管理jar包
maven配置:
dependency
groupIdlog4j/groupId
artifactIdlog4j/artifactId
version1.2.17/version
/dependency
springboot对自带的logback框架集成太高了,稍有不慎就导致自己的log4j的配置可能无效。
首先将spring-boot-starter中的logging去除,如图:
我原本以为这就完了,引入了log4j的框架确实能用,但是控制台打印不出来sql的细节。于是又找呀找。终于发现在spring-boot-starter-web中还有logback的存在,再次去除:
然后再引入log4j的依赖spring-boot-starter-log4j,注意的是如果引入后发现报错,比如slf4j缺失了等等,先看一下maven的依赖库里,引入spring-boot-starter-log4j共有四个依赖包。如下图。
网上1.3.8这个版本遍地都是。一定要看好下面是四个jar包,不需要引入额外的slf4j的jar包。
如果想要打印sql的详情在log4j.properties中加一句:log4j.logger.com.gd.app.dao=DEBUG
log4j的配置文件:
mybatis默认使用log4j,当有self4j这个日志jar包存在时会无法打印sql,请移除或者在工程启动时显示设置mybatis使用的日志类:
log4j.logger.org.apache.ibatis=debug,stdout log4j.logger.java.sql=debug,stdout
这样有时可能却不是个可行的办法,原因在于不可能移除self4j包,因为其他依赖包必须依赖这个包。 mybatis有如下方法来手动选择日志类,调用后成功打印日志 如果引用了slf4j的包,并且要使用log4j需要加入slf4j-log4j12的包,如果没有加入slf4j-log4j12的包是无法打印sql的。。具体log4j文件如下:
log4j.rootCategory=info, stdout , R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.Conversion
Pattern=[QC] %p [%t] %C.%M(%L) | %m%n
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.File=D:\\report.log
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d-[TS] %p %t %c - %m%n
log4j.logger.com.ibatis=debug
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug
log4j.logger.java.sql.Connection=debug
log4j.logger.java.sql.Statement=debug
log4j.logger.java.sql.PreparedStatement=debug,stdout
现在重启tomcat,执行一条语句看看,sql是不是都出来了
1、log4j配置[html]viewplaincopylog4j.logger.com.ibatis=DEBUGlog4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUGlog4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUGlog4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUGlog4j.logger.org.mybatis=DEBUGlog4j.logger.java.sql.Connection=DEBUGlog4j.logger.java.sql.Statement=DEBUGlog4j.logger.java.sql.PreparedStatement=DEBUGlog4j.logger.java.sql.ResultSet=DEBUG2、导入jar[html]viewplaincopylog4jlog4j1.2.14org.slf4jslf4j-api1.7.7org.slf4jslf4j-log4j121.7.73、没了,注意一定要导入slf4j的包,否则sql语句打印不出来
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流