SpringBoot中使用mybatis/ibatis日志打印sql
SpringBoot中使用mybatis/ibatis时日志打印sql
- 控制台打印mybatis/ibatis对应的sql
- 主机的日志文件中打印mybatis/ibatis对应的sql
控制台打印mybatis/ibatis对应的sql
只需在配置文件中增加以下配置,调整自己想要的日志输出级别即可在控制台看到自己sql的打印日志。
(举例为.properties的配置格式,如果是yaml格式自行修改即可)
# 配置sql日志的打印级别(这里设置成自己mapper的所在路径)
logging.level.com.xxx.jay.cust.mapper=info
主机的日志文件中打印mybatis/ibatis对应的sql
在做好第一步配置后发现主机的日志文件(app.log或catalina.out)中还是未打印服务对应的sql。原因为配置文件中配置的mybatis打印日志的输出方式使用的是org.apache.ibatis.logging.stdout.StdOutImpl,
查看StdOutImpl类发现打印为System.out.println()控制台输出打印的,所以sql对应的日志是在主机上的console.log下面。
# 配置mybatis输出日志的方式,使用的为默认的StdOutImpl
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
可以仿照StdOutImpl自定义mybatis打印日志的输出方式,在配置文件中配置成自己的输出方式类。即可实现在主机的日志文件(app.log或catalina.out)中打印服务对应的sql,方便对线上问题的定位。
/*** @Author: jay* 定义mybatis的sql打印输出方式* @Date: 2020/11/30 14:48*/
public class SqlLogUtils implements Log{private final java.util.logging.Logger log;public SqlLogUtils(String clazz) {log = Logger.getLogger(clazz);}@Overridepublic boolean isDebugEnabled() {return true;}@Overridepublic boolean isTraceEnabled() {return false;}@Overridepublic void error(String s, Throwable e) {log.log(Level.SEVERE, s, e);}@Overridepublic void error(String s) {log.log(Level.SEVERE, s);}@Overridepublic void debug(String s) {if(s.charAt(2) == '>' || s.charAt(0) == '<'){log.log(Level.INFO, s);}}@Overridepublic void trace(String s) {log.log(Level.FINER, s);}@Overridepublic void warn(String s) {log.log(Level.WARNING, s);}
}
# 配置mybatis输出日志的方式,指定使用自己定义的类。
mybatis.configuration.log-impl=com.xxx.jay.utils.SqlLogUtils
完成上述两步:1.定义自己想要的mybatis输出日志方式的类。 2.配置文件配置成自己新定义的类。
即可实现使用mybatis/ibatis时打印的sql在主机日志中输出
SpringBoot中使用mybatis/ibatis日志打印sql相关推荐
- mybatis配置log4j打印sql日志
mybatis配置log4j打印sql日志 前提是你已经配置好了log4j. 在mybatis的配置文件中设置 <?xml version="1.0" encoding=&q ...
- mybatis结合log4j打印SQL日志
mybatis结合log4j打印SQL日志 1.Maven引用jar包 默认的mybatis不能打印出SQL日志,不便于查看调试,需要结合log4jdbc-log4j2就可以完整的输入SQL的调试信息 ...
- Mybatis 开启控制台打印sql语句
概述 springboot+mybatis整合过程中,开启控制台sql语句打印的多种方式: 方法1 在springboot+mybatis整合中,可以将springboot的配置文件添加如下一段也可: ...
- spring集成mybatis后,打印SQL语句
1.美图 网上说mybatis的早前版本配置打印sql还比较简单,在3.0.6之后配置方式修改了. 现在的spring-mybatis.xml配置如下: <bean id="sqlSe ...
- springboot中整合mybatis及简单使用
springboot中整合mybatis及简单使用 1.引入依赖 2.在applicaiton.yaml中配置数据源以及mybatis 3.创建sql测试表 4.编写mapper接口和mapper.x ...
- springboot中的mybatis是如果使用pagehelper的
springboot中的mybatis是如果使用pagehelper的 springboot中使用其他组件都是基于自动配置的AutoConfiguration配置累的,pagehelper插件也是一样 ...
- SpringBoot中关于Mybatis使用的三个问题
SpringBoot中关于Mybatis使用的三个问题 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/8495453.html 原本是要讲讲PostgreSQL ...
- 帆软报表使用及设置日志打印sql
1.通过日期返回星期数 WEEKDAY(Serial_number):获取日期并返回星期数. eg: WEEKDAY("2005/9/10")等于6(星期六) 2.条件判断 sw ...
- 【SpringBoot】72、SpringBoot中接入轻量级分布式日志框架Graylog
1.Graylog简介 Graylog 是一个开源的日志聚合.分析.审计.展现和预警工具.在功能上来说,和 ELK 类似,但又比 ELK 要简单很多.依靠着更加简洁,高效,部署使用简单的优势很快受到许 ...
最新文章
- 谈谈读“SEO实战密码”的一些感悟
- Photometric Stereo 初體驗
- 调试 不弹出 小米_时隔六年,小米NFC碰碰贴复活,碰一下自动亮灯、联网、投屏...
- 知识工场 | CN-DBpedia 漫游指南
- 小贷公司的风险成因及应对策略——策略篇
- Oracle多表联查时,某个字段由逗号分割的字符串组成,关系是此字符串切割后,对应另一张表某个字段,如何实现一条sql完成查询?
- python迭代遍历目录下所以文件(Iterating through directories with Python)
- 北理工网络安全导论作业:DES算法
- 全链路压测之全链自动化
- java实现一个录像大师
- 楚天音乐台的在线广播的URL代码
- html 百分比饼状图,highcharts饼状图百分比显示的数据和写的不同
- 计算机自我检测方法,电脑问题的自我检测方法有哪些?
- 【Redis】Redis配置文件详解
- 手机的1G,2G,3G和4G区别识记
- 蓝桥杯--第七届决赛:圆圈舞
- Cisco 路由器 基于时间控制策略案例
- Python爬虫系列:腾讯课堂Scrapy爬虫
- cocos2d-x 植入广告(一) 百度横屏、插屏广告
- python爬取网易词典,利用Python3和Charles爬取有道词典
热门文章
- 云服务器哪个最好?这家口碑杠杠的!
- ForkLift for Mac(文件管理程序)
- DirectSound 钢琴(2)
- X210移植MTK7601无线网卡驱动(下)
- “云”到底是什么?--科普贴
- thinkphp开发app商城项目源码下载(thinkphp)
- 关于今日头条屏幕适配
- 汇编语言程序设计---1~4章习题答案(王爽第二版)
- [EE261学习笔记] 9+.重侧δ函数
- ubuntu自定义安装里怎么选_安装ubuntu时怎么选择挂载点