Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种方式:
-
SLF4J
-
Apache Commons Logging
-
Log4j 2
-
Log4j
-
JDK logging
具体选择哪个日志实现由MyBatis的内置日志工厂确定。它会使用最先找到的(按上文列举的顺序查找)。 如果一个都未找到,日志功能就会被禁用。
不少应用服务器的classpath中已经包含Commons Logging,如Tomcat和WebShpere, 所以MyBatis会把它作为具体的日志实现。
记住这点非常重要。这意味着,在诸如 WebSphere的环境中——WebSphere提供了Commons Logging的私有实现,你的Log4J配置将被忽略。
这种做法不免让人悲摧,MyBatis怎么能忽略你的配置呢?事实上,因Commons Logging已经存 在,按优先级Log4J自然就被忽略了!
解决办法:
在mybatis-config.xml配置文件中:
<configuration>
<settings>
<!-- 让mybatis不使用自己的slf4j日志功能、使用log4j输出日志 -->
<setting name="logImpl" value="LOG4J"/>
</settings>
</configuration>
相关推荐
Mybatis 提供了一种日志机制,能够自动填充SQL参数并打印到控制台,这对于排查问题和理解查询逻辑非常有帮助。 首先,Mybatis的日志实现依赖于日志库,如Log4j、Logback或Java内置的java.util.logging。为了开启SQL...
把 mybatis 输出的sql日志还原成完整的sql语句。 将日志输出的sql语句中的问号 ? 替换成真正的参数值。 通过 "Tools -> MyBatis Log Plugin" 菜单或快捷键 "Ctrl+Shift+Alt+O" 启用。 点击窗口左边的 "Filter" ...
【标题】"mybatis查询入门(log4j控制台sql语句日记输出的)"涉及的知识点主要集中在MyBatis框架的基础使用以及如何通过Log4j在控制台输出SQL语句,以便于调试和优化数据库操作。MyBatis是一个轻量级的Java持久层框架...
以下是实现MyBatis控制台打印SQL语句的具体步骤: 1. **配置日志级别**: 要在控制台看到MyBatis执行的SQL语句,首先需要将相关的日志级别设置为`DEBUG`。这通常涉及到对Log4j配置文件的修改。在Log4j的配置中,...
在Spring Boot集成MyBatis的项目中,有时候我们需要在控制台打印SQL日志,以便于调试和优化数据库操作。本文将详细介绍如何配置Spring Boot和MyBatis以实现控制台打印SQL日志的功能。 首先,Spring Boot默认使用的...
现在,当运行你的应用时,所有MyBatis执行的SQL语句都将被输出到控制台或指定的日志文件中,这将帮助你调试和优化数据库查询性能。 总结一下,要使MyBatis打印SQL,你需要: 1. 引入Log4j库(如`log4j-1.2.16.jar`...
"MyBatis Log Plugin"就是为了满足这一需求而设计的,它能直接在IDEA中显示MyBatis执行的SQL,免去了手动开启日志或者查看控制台的繁琐步骤。 接下来,我们按照以下步骤在2021版IntelliJ IDEA上安装此插件: 1. ...
总结以上,通过MyBatis3与log4j的集成,开发者可以方便地在控制台输出SQL语句,这对于调试和问题定位是极其有帮助的。通过合理配置log4j和MyBatis3,我们既可以充分利用日志信息来提高开发效率,又能确保安全地处理...
Mybatis Log SQL输出是Mybatis框架中用于调试和性能优化的重要功能。它允许开发者查看运行时执行的SQL语句,这对于理解数据访问层的操作、排查问题以及优化查询性能至关重要。在IntelliJ IDEA这个强大的Java集成开发...
4. **运行并查看日志**:完成上述配置后,当你的应用执行MyBatis的SQL操作时,控制台将输出对应的SQL语句。你可以根据这些日志来观察SQL执行情况,帮助调试和优化。 总结来说,要在MyBatis+Spring框架中配置日志以...
首先,问题背景是开发人员在编写SQL语句时,通常需要结合控制台输出和数据库管理工具(如Navicat或PLSQL)来检查和验证SQL的正确性。如果只看到占位符(例如“?”),而看不到实际的参数值,这将大大降低工作效率。...
在上述配置中,我们创建了两个appender,STDOUT用于控制台输出,SQL_FILE用于将包含"org.mybatis"包的日志写入sql.log文件。这样,我们就能实现动态打印SQL日志,并且根据包名区分日志输出位置。 最后,`spring-...
这意味着我们将看到如何在Mybatis配置中集成Log4j,以便在执行SQL操作时,能够通过Log4j将这些操作的细节(如SQL语句)输出到控制台。 **标签:“log4j”** “log4j”是Apache的一个开源日志组件,广泛用于Java...
采用springmvc+mybatis,搭建部分大致跟网上其他资料差不多,唯一不同的加入了统一错误处理,为了方便开发人员开发,所有错误码用一张表存在数据库中,然后由应用将整表缓存,缓存采用的spring自带的cache,开发中...
4. **运行并查看日志**:完成以上步骤后,当MyBatis执行SQL时,相应的SQL语句以及执行信息将会按照Log4j的配置输出到控制台或其他指定位置。 除了基础配置,我们还可以根据需求调整日志级别,例如在生产环境中可能...
总的来说,通过配置日志框架、MyBatis配置、IDEA设置和使用mybatis-log插件,你可以在IntelliJ IDEA中方便地打印和查看MyBatis执行的完整SQL语句,从而提升开发效率和问题排查能力。在实际项目中,合理使用日志可以...
// 可以通过日志框架如Log4j记录SQL,而不是直接打印到控制台 return result; } @Override public Object plugin(Object target) { if (target instanceof Executor) { return Plugin.wrap(target, this); ...
但是,由于MyBatis的日志输出格式特殊(通常会分为两部分:“Preparing: SQL语句”和“Parameters: 参数列表”),直接读取这些日志往往不能得到可执行的SQL语句。因此,本文将详细介绍两种将MyBatis日志中的...
总结,通过以上步骤,你已成功配置了 MyBatis 使用 Log4j 来记录日志,同时将日志输出到后台控制台和文件,这有助于在开发和调试过程中追踪问题,提高代码的可维护性。记得根据实际需求调整日志级别和输出格式,以...
Log4j 还提供了多种日志Appender,用于将日志信息输出到不同的目标,例如控制台、文件、数据库等。 MyBatis 的基本概念 MyBatis 是一个流行的持久层框架,用于将 Java 应用程序中的 SQL 语句与数据库进行交互。...