`

mybatis日志打印sql语句

阅读更多

        mybatis打印出sql语句可以很方便我们调试程序。现在介绍两种常用的简单的配置方案,第一种方案是配置log4j日志框架,第二种方案是采用slf4j日志框架。这两种方案存在着联系,第二种方案要依赖第一种方案即slf4j要通过log4j来输出日志信息打印sql语句。

        安装log4j,要将log4j.jar添加到build path

        配置log4j日志属性文件,这里采用了log4j1.x方式配置lo4j.properties文件

#将Mybatis log4j运行级别调到DEBUG可以在控制台打印出Mybatis运行的sql语句
log4j.rootLogger=DEBUG,Console
### 把日志信息输出到控制台 ###
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=%d{yyyy-MM-dd-HH\:mm\:ss,SSS} [%t]  [%c] [%p] - %m%n 

#要和mybatis的Mapper.xml文件namespace保持一致
log4j.logger.org.lian.domain.Group=TRACE
log4j.logger.org.lian.domain.Music=TRACE

        配置mybatis-config.xml主配置文件,配置日志的log4j的实现

<settings>
      <!-- 配置开启日志 Log4j -->
     <setting name="logImpl" value="LOG4J"/>
</settings>

       配置Mapper.xml映射文件,以GroupMapper.xml文件为例 namespace要和log4j中保持一致

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  
<mapper namespace="org.lian.domain.Group">
	
	<resultMap id="groupResult" type="Group">
		<id property="groupId" column="group_id"/>
		<result property="groupName" column="group_name"/>
	</resultMap>
	
	<!-- <select id="selectGroup" parameterType="String" resultType="Group">
		select group_id ,group_name from t_group  where group_id = #{group_id}
	</select> -->
	
	<select id="selectGroup" parameterType="String" resultMap="groupResult">
		select group_id ,group_name from t_group  where group_id = #{group_id}
	</select>
</mapper>

        除了上面的方案还有一种方案,我们修改一下mybatis-config.xml主配置

<settings>
      <setting name="logImpl" value="SLF4J"/>
</settings>

         上面的其他配置都不用修改,只需要安装slf4j日志组件,将slf4j.api.jar 和 slf4j-log4j12.jar添加包build path,同时要保留log4j.jar。

           log4j.properties配置文件中具体的mapper.xml配置也可以不用配置,这样默认打印SQL是DEBUG级别,而且没有详尽的返回结果,如果要查看详尽的信息就要配置成 TRACE 

log4j.logger.org.lian.domain.Group=DEBUG  
log4j.logger.org.lian.domain.Music=DEBUG

 上面的配置和省略不写,同样也看到日志信息。

分享到:
评论

相关推荐

    mybatis+spring 框架中配置日志中显示sql语句

    在MyBatis与Spring整合的框架中,为了便于调试和性能优化,我们常常需要在日志中打印出执行的SQL语句。以下是如何在这样的环境中配置日志来显示SQL语句的详细步骤。 首先,我们需要了解MyBatis的日志实现。MyBatis...

    ideal mybatis打印sql插件

    把 mybatis 输出的sql日志还原成完整的sql语句。 将日志输出的sql语句中的问号 ? 替换成真正的参数值。 通过 "Tools -&gt; MyBatis Log Plugin" 菜单或快捷键 "Ctrl+Shift+Alt+O" 启用。 点击窗口左边的 "Filter" ...

    Mybatis日志中的SQL解析工具(网页版).html

    Mybatis日志中的SQL解析工具(网页版) 说明:复制日志时,必须注意,日志必须包含Preparing:和Parameters:全部内容,而且日志换行格式要保留,不要复制成纯文本,直接ctrl+c即可。

    idea mybatislog 日志打印 打印完整sql

    总的来说,通过配置日志框架、MyBatis配置、IDEA设置和使用mybatis-log插件,你可以在IntelliJ IDEA中方便地打印和查看MyBatis执行的完整SQL语句,从而提升开发效率和问题排查能力。在实际项目中,合理使用日志可以...

    Mybatis Log(自动填充sql参数打印到控制台)

    在执行`getUserByUsernameAndStatus`方法时,Mybatis会自动填充SQL参数,并将完整的SQL语句(包括参数值)打印到控制台。例如,如果传入的参数是`username='test'`和`status='active'`,控制台将输出如下内容: ```...

    Mybatis日志SQL解析工具

    该工具可以将mybatis输出的sql日志提取出来,并将其格式化为可以直接执行的sql语句,节约开发人员时间

    原样输出mybatis的sql执行语句(mysql和oracle都可用).zip

    本文将深入探讨如何在SpringBoot(整合MyBatis)和传统的SSM(Spring、SpringMVC、MyBatis)项目中,原样输出MyBatis的SQL执行语句,以便于开发者直观地检查SQL语句是否正确和高效,从而进行优化和调试。此方法对...

    idea插件-mybatis-打印sql

    在开发过程中,为了调试SQL语句,通常需要查看执行的SQL日志。"MyBatis Log Plugin"就是为了满足这一需求而设计的,它能直接在IDEA中显示MyBatis执行的SQL,免去了手动开启日志或者查看控制台的繁琐步骤。 接下来,...

    idea插件mybaits log 打印sql语句

    标题 "idea插件mybaits log 打印sql语句" 涉及的是一个针对IntelliJ IDEA的MyBatis日志插件,它的主要功能是帮助开发者在开发过程中实时查看并打印出MyBatis执行的SQL语句。这个功能对于调试和优化数据库查询非常...

    mybatis打印出sql

    在这个配置中,我们设置了`log4j.logger.org.mybatis`的级别为DEBUG,这意味着MyBatis的所有DEBUG级别的日志信息,包括执行的SQL语句,都会被记录下来。 在MyBatis的配置文件(如`mybatis-config.xml`)中,确保...

    从mybatis日志中解析出可执行的sql语句

    适用场景:生产环境从sql日志获取可执行sql语句 使用方法:从日志中获取完整的sql片段(可以前后多复制一部分,确保准确性),打开html文件,粘贴到输入框中点击解析sql,获得可执行的sql

    mybatis 日志 sql参数替换工具

    非常好用的,就是你们所要的 Mybatis日志参数快速替换占位符 sql参数替换工具html

    在ibatis日志信息中打印SQL语句的方法(个人总结)

    在使用iBatis(现为MyBatis)作为持久层框架进行开发时,有时我们需要调试SQL语句,以便查看执行的SQL、优化性能或者解决查询问题。本文将详细讲解如何在iBatis日志信息中打印SQL语句,以便更好地理解和优化数据库...

    mybatis慢SQL插件

    拦截器监控慢SQL并将完整的可执行的SQL语句打印在日志文件中,复制该SQL语句即可在数据库工具中执行。 使用方法: 找到你springboot项目中的配置文件,增加如下配置即可 application.yml 配置如下: sql: slow...

    mybatis查询入门(log4j控制台sql语句日记输出的)

    【标题】"mybatis查询入门(log4j控制台sql语句日记输出的)"涉及的知识点主要集中在MyBatis框架的基础使用以及如何通过Log4j在控制台输出SQL语句,以便于调试和优化数据库操作。MyBatis是一个轻量级的Java持久层框架...

    SSM(Spring+springmvc+mybatis)项目实例.zip

    SSM(Spring、SpringMVC、MyBatis)是一个经典的Java web开发框架组合,它将Spring的核心容器、Spring MVC作为视图控制器以及MyBatis作为持久层框架集成在一起,为开发者提供了一种高效且灵活的开发方式。...

    mybatisx,一款打印项目sql在日志中的插件

    MybatisX是一款针对Mybatis框架开发的插件,它的主要功能是帮助开发者在日志中打印出项目的SQL语句,以便于调试、优化数据库查询和理解数据操作的过程。这款插件极大地提升了开发效率,尤其是在处理复杂的业务逻辑和...

    mybatis打印日志实例

    运行测试程序(位于`test`包下)时,MyBatis将会按照配置打印出SQL语句及其执行信息,这对于我们理解和优化SQL性能非常有帮助。例如,你可以看到每个SQL语句的执行时间,以及动态SQL生成的实际SQL语句。 在实际应用...

    mybatis 插件: 打印 sql 及其执行时间实现方法

    下面是一个简单的示例,演示如何使用 MyBatis 的插件来打印每条 SQL 语句及其执行时间。首先,创建一个名为 SqlCostInterceptor 的类,实现 Interceptor 接口: ```java public class SqlCostInterceptor implements...

    springboot+mybatis配置控制台打印sql日志的方法

    设置为`DEBUG`级别后,所有与这些类相关的日志信息,包括SQL语句和参数,都会被打印到控制台。 注意,`debug="false"`表示不开启Logback自身的调试模式,如果需要看到Logback内部的配置信息,可以将其设置为`true`...

Global site tag (gtag.js) - Google Analytics