我使用的是mybatis3.2.2+spring3.2.3+log4j1.7.5,在编程调试的过程中,发现mybatis没有打印相应的sql语句,
很不方便,不知掉自己的sql到底错在哪里。于是,到网上查找相关资料并进行配置。
log4j的配置文件如下:
log4j.rootLogger=DEBUG,CONSOLE,ROLLING_FILE log4j.additivity.org.apache=true #console output log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender log4j.appender.CONSOLE.Threshold=DEBUG log4j.appender.CONSOLE.Target=System.out log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout log4j.appender.CONSOLE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n #file output log4j.appender.ROLLING_FILE=org.apache.log4j.RollingFileAppender log4j.appender.ROLLING_FILE.Threshold=ERROR log4j.appender.ROLLING_FILE.File=tlm.log log4j.appender.ROLLING_FILE.Append=true log4j.appender.ROLLING_FILE.MaxFileSize=10240KB log4j.appender.ROLLING_FILE.MaxBackupIndex=1 log4j.appender.ROLLING_FILE.layout=org.apache.log4j.PatternLayout log4j.appender.ROLLING_FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n #print sql statement log4j.logger.org.apache.ibatis=DEBUG log4j.logger.java.sql.ResultSet=DEBUG log4j.logger.java.sql.Connection=DEBUG log4j.logger.java.sql.Statement=DEBUG log4j.logger.java.sql.PreparedStatement=DEBUG
web.xml中需要配置log4j配置的监听,配置方法如下:
<!-- 日志配置 --> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>classpath:log4j.properties</param-value> </context-param> <listener> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener> <servlet> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>detail</param-name> <param-value>0</param-value> </init-param> </servlet>
最后,最重要的一点是:log4j、slf4j的包要引用全,并且保证版本号保持一致。
我项目中使用的log4j、slf4j包如下:
log4j-1.2.17.jar
slf4j-api-1.7.5.jar
slf4j-log4j12-1.7.5.jar。
slf4j-log4j12-1.7.5.jar是不能缺少的,否者不能打印sql语句。
相关推荐
6. **Executor执行器**:Executor是Mybatis的执行引擎,它负责执行SQL语句,包括SimpleExecutor、ReusedExecutor和BatchExecutor,分别对应简单的SQL执行、重用Statement的执行和批处理执行。 7. **插件机制**:...
- **动态SQL**:MyBatis允许在映射文件中编写动态SQL,可以根据条件灵活地生成不同的SQL语句。 - **事务管理**:MyBatis支持手动和自动事务管理,可以根据业务需求进行配置。 - **缓存机制**:内置的本地缓存和二...
在标题"myBatis3.2.2(含源码、文档)"中,我们可以推断这是关于MyBatis框架的特定版本——3.2.2的资源包。这个版本可能包含了框架的源代码,这对于开发者来说非常有价值,因为通过查看源码,可以深入理解框架内部的...
SqlSessionFactory则负责生成SqlSession对象,SqlSession是与数据库交互的会话对象,可以执行SQL语句并处理结果。 MyBatis的映射机制是其核心功能之一。通过Mapper接口和XML或注解方式定义的映射文件,可以将Java...
SQL映射文件是MyBatis的核心组件之一,它是配置SQL语句的地方。每个映射文件对应数据库中的表,并且可以配置CRUD(创建、读取、更新、删除)操作相关的SQL语句。 #### 类型别名(typeAliases) 类型别名可以为Java...
在操作数据库方面,MyBatis允许用户使用预定义SQL语句,支持select、insert、update和delete操作,并且可以配置相应的参数和结果映射。MyBatis还支持缓存机制,包括一级缓存和二级缓存,以提高访问数据库的性能。 ...
标题 "mybatis3.2.2 sqlmap通配实现" 指的是在MyBatis 3.2.2版本中使用SQL映射文件(XML配置)进行动态SQL的构建,特别是涉及到通配符(例如`*`)的使用。在MyBatis中,SQLMap是用于定义SQL查询和结果映射的XML文件...
MyBatis3.2.2 版本是其中的一个稳定版本,提供了大量特性来支持开发者更高效地处理数据库操作。 ### MyBatis 介绍 MyBatis 支持普通 SQL 查询、存储过程以及高级映射,它通过简单的 XML 或注解配置,结合原始的 ...
它通过XML或注解方式将SQL语句与Java对象进行绑定,使得开发者可以摆脱编写大量JDBC代码的困扰,更加专注于业务逻辑。例如,你可以创建一个XML配置文件,定义SQL查询、插入、更新和删除操作,然后通过Java接口调用...
其次,MyBatis提供了强大的动态SQL功能,比如if、choose、when、otherwise、where、set、foreach等标签,可以在映射文件中灵活构建SQL语句,实现条件判断、循环等复杂逻辑。这种动态SQL的能力使得MyBatis在处理各种...
首先,MyBatis的核心概念是SQL映射,它将SQL语句与Java代码分离,使得代码更加整洁且易于维护。在3.2.2版本中,XML配置文件或注解被用来定义SQL映射。这种方式允许开发者灵活地编写动态SQL,根据业务需求生成各种...
Mybatis是一个轻量级的Java持久层框架,它将SQL语句与Java代码紧密结合,提供灵活的映射机制,使得开发者可以更方便地操作数据库。在3.2.2版本中,Mybatis提供了以下主要特性: 1. **动态SQL**:Mybatis允许在映射...
9. **XML配置文件和注解**:MyBatis支持XML配置和注解两种方式来定义SQL语句和映射。XML配置文件通常放在mybatis-3.2.2下的resources目录下,包含全局配置和Mapper配置。 10. **动态SQL**:MyBatis的一个强大特性,...
1. SQL映射文件:MyBatis允许开发者在XML文件中编写自定义的SQL语句,这样可以提高SQL执行效率,并且易于维护。 2. 动态SQL:通过在XML或注解中使用条件语句,可以实现动态生成SQL,适应不同的查询需求。 3. 映射器...
MyBatis是一款流行的Java持久层框架,用于简化数据库操作,其特点是将SQL语句与Java代码分离,使得SQL和业务逻辑更加清晰。本项目提供的"mybatis自动sql生成插件源码"则进一步提升了开发效率,通过拦截器...
**MyBatis 3.2.2**: MyBatis是一个持久层框架,它允许开发者将SQL语句与Java代码紧密结合,避免了传统的JDBC代码编写工作。MyBatis 3.2.2版本提供了动态SQL、结果映射等功能,使得数据库操作更加灵活和高效。 **...
总结起来,这个MyBatis3.2.2连接MySQL数据库的完整示例代码,涵盖了从初始化环境、创建Mapper接口和XML配置文件,到使用SqlSession执行数据库操作的全过程。对于初学者来说,这是一个很好的起点,能帮助他们快速理解...
同时,MyBatis支持动态SQL,利用`<if>`、`<choose>`、`<when>`、`<otherwise>`等标签,可以根据条件灵活生成SQL语句。 MyBatis的事务管理支持编程式和声明式两种方式。编程式事务管理通过SqlSession的begin...
2. **映射器(Mapper)**:映射器接口是MyBatis的核心组成部分,开发者可以定义自己的方法来执行SQL操作,MyBatis会自动将这些方法与XML映射文件或注解中的SQL语句关联起来。 3. **SqlSession**:SqlSession对象是...
MyBatis的核心功能在于它的XML或注解方式的SQL映射文件,这些文件将SQL语句与Java代码分离,提高了代码的可读性和可维护性。在3.2.2版本中,MyBatis提供了一些关键特性: 1. SQL映射:MyBatis允许在XML或注解中编写...