Mybatis日志实现
Mybatis日志实现
在以往,我们经常会使用到debug模式来调节,跟踪我们的代码执行过程。但是现在使用Mybatis是基于接口,配置文件的源代码执行过程,因此,我们必须选择日志工具类来作为我们开发,调节程序的工具。
Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种工具:
- SLF4J
- Apache Commons Logging
- Log4j2
- Log4j
- JDK logging
标准日志工厂实现
<settings><setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>
测试,可以看到控制台有大量的输出!我们可以通过这些输出来判断程序到底哪里出了Bug
Log4j实现
Log4j是Apache的一个开源项目
通过使用Log4j,我们可以控制日志信息输送的目的地:控制台,文本GUI组件
通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程,最令人感兴趣的就是,这些可以通过一个配置文件来灵活配置,而不需要修改应用的代码。
使用步骤
1.导入log4j的包
<dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version>
</dependency>
2.配置文件编写(log4j.properties)
#将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码
log4j.rootLogger=DEBUG,console,file
#控制台输出的相关设置
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.Threshold=DEBUG
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%c]-%m%n
#文件输出的相关设置
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=./log/lili.log
log4j.appender.file.MaxFileSize=10mb
log4j.appender.file.Threshold=DEBUG
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%p][%d{yyyy-MM-dd}][%c]%m%n
#日志输出级别
log4j.logger.org.mybatis=DEBUG
log4j.logger.java.sql=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
3.setting设置日志实现
<settings> <setting name="logImpl" value="LOG4J"/>
</settings>
4.程序中使用Log4j进行输出!
public class MybatisTest {static Logger log = Logger.getLogger(MybatisTest.class);@Testpublic void test2() {try (SqlSession sqlSession = MybatisUtil.getSqlSession()) {log.info("获取映射器");UserMapper mapper = sqlSession.getMapper(UserMapper.class);log.info("根据姓名条件查询用户信息");User user = mapper.findByName("苏炳添");log.info("开始输出用户信息");System.out.println(user);} catch (Exception e) {e.printStackTrace();}}
}
Mybatis日志实现相关推荐
- 手写logback_springboot logback调整mybatis日志级别无效的解决
springboot logback调整mybatis日志级别无效的解决 现象 在日志配置文件 logback-spring.xml 中,无论怎么修改级别,mybatis 的 sql 日志都会打印出来 ...
- MyBatis日志到底是如何做到兼容所有常用日志框架的?
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 双子孤狼 来源 | https://blog. ...
- 的日志在哪里_写给大忙人看的,MyBatis日志如何做到兼容所有常用的日志框架?...
前言 日志,在我们开发中是一个非常重要的话题,良好的日志打印可以帮助我们快速的定位问题,可能现在我们开发用到最多的日志框架就是slf4j了,但是日志还有其他很多优秀的框架,比如:Apache Comm ...
- 萌新发问:MyBatis日志到底是如何做到兼容所有常用日志框架的?
点击上方 好好学java ,选择 星标 公众号重磅资讯,干货,第一时间送达 今日推荐:推荐 19 个 github 超牛逼项目!个人原创100W +访问量博客:点击前往,查看更多 作者:双子孤狼 bl ...
- springboot+mybatis日志显示SQL
在springBoot+Mybatis日志显示SQL的执行情况的最简单方法就是在properties新增: logging.level.com.dy.springboot.server.mapper= ...
- 如何优雅的将Mybatis日志中的Preparing与Parameters转换为可执行SQL
原文链接 疫情期间大家宅在家里是不是已经快憋出"病"了~~ 公司给开了VPN,手机电脑都能连,手机装上APP测试包,就能干活了,所以walking从2020.02.01入京以来,已 ...
- mybatis 日志 Reader entry 乱码
mybatis 日志 Reader entry 乱码 问题 现象:乱码日志如下 2021-03-04 10:59:13 -0 [main] DEBUG - Logging initialized us ...
- 关闭mybatis 日志
关闭mybatis 日志 说明 在网上找了一大圈都没有靠谱的答案,有时候项目中的日志打印太多,需要屏蔽部分日志打印 mybatis 日志的实现 原理:就是mybatis 的日志抽取了公共的方法,需要依 ...
- springboot项目mybatis日志自定义设置无法生效
springboot项目mybatis日志自定义设置无法生效,就是无法设置日志级别,无法对java.sql.PreparedStatement.java.sql.Connection等进行设置. 翻了 ...
- mybatis日志功能是如何设计的?
引言 我们在使用mybatis时,如果出现sql问题,一般会把mybatis配置文件中的logging.level参数改成debug,这样就能在日志中看到某个mapper最终执行sql.入参和影响数据 ...
最新文章
- 为Nginx制作404 403 500等错误页面
- linux内存管理与设计,深入理解Linux内存管理机制(一)
- spring environment_SpringBoot实战8-Spring基础-应用环境
- 量子计算: 1秒完成传统计算机100年的任务量
- 从服务器检索时出错dfdferh01_大数据实战项目之海量人脸特征检索解决方案演进...
- SciSharpCube:容器中的SciSharp,.NET机器学习开箱即用
- 中国PLC市场增长分析
- 功能1 -- 顶部导航栏和返回顶部效果
- fckeditor java_FCKeditor在线编辑器(Java)
- 计算机网络的三级结构是什么,计算机的三级存储结构是什么
- k线形态python_Python量化分析之K线模式识别
- 思维导图告诉你怎样正确的做笔记?
- 串行口中断服务函数的触发条件-------TI/RI 触发
- php把字符串变为数组_php把字符串转为数组的方法
- css3中的渐变色效果
- c语言中“函数的定义不可以嵌套,但函数的调用可以嵌套
- 从零开始——Dev-C++调试方法
- Spring AOP源码分析二
- 2018深圳国际3D打印产业展览会
- URAL 1517. Freedom of choice (后缀数组)
热门文章
- 文件上传之multer
- CSS3属性选择器总结
- 超级有用的git reset --hard和git revert命令
- Android网络课程笔记-----完善GoogleStyleApp框架结构
- GridView中如何使用CommandField删除时,弹出确认框
- mybatis-plus 自定义QueryWrapper(一)实现查询函数
- 荣耀30s刷鸿蒙,荣耀终于放出大招!4部荣耀旗舰可升级鸿蒙,网友:终于等到了...
- 怎么恢复初始状态_长妊娠纹怎么办 产后消除妊娠纹绝招
- MyBatis源码阅读(二) --- 执行流程分析
- Vue的生命周期和钩子函数