`

Spring+Junit+Mybatis打印jdbc log 操作日志

 
阅读更多

pom依赖:

 

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>log4j-over-slf4j</artifactId>
            <version>1.7.21</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency><dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>1.2.2</version>
        </dependency>

        <dependency>
            <groupId>org.mybatis.caches</groupId>
            <artifactId>mybatis-redis</artifactId>
            <version>1.0.0-beta1</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.2.8</version>
        </dependency>
       <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>4.1.3.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.2</version>
            <scope>test</scope>
        </dependency>
<!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
            <scope>test</scope>
        </dependency>


        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <exclusions>
                <!-- Exclude Commons Logging in favor of SLF4j -->
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
            <version>4.1.3.RELEASE</version>
        </dependency> 

 在junit测试类上添加注解

如:

@RunWith(JUnit4ClassRunner.class) //此处为自定义类 代码如后所示
@ContextConfiguration(locations = { "classpath*:dao-context.xml" })
//@Transactional
public class BaseDaoTest{...}
public class JUnit4ClassRunner extends SpringJUnit4ClassRunner {
   static {
      try {
         Log4jConfigurer.initLogging("classpath*:log4j.properties");
      } catch (FileNotFoundException ex) {
         System.err.println("Cannot Initialize log4j");
      }
   }
   public JUnit4ClassRunner(Class<?> clazz) throws InitializationError {
      super(clazz);
   }
}

 

在classpath下添加配置文件log4j.properties内容如下:

# For JBoss: Avoid to setup Log4J outside $JBOSS_HOME/server/default/deploy/log4j.xml!
# For all other servers: Comment out the Log4J listener in web.xml to activate Log4J.
log4j.rootLogger=debug,stdout,PRODUCT
 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout

log4j.appender.PRODUCT=org.apache.log4j.DailyRollingFileAppender
log4j.appender.PRODUCT.File=/data/logs/kaola-jdbc.log
log4j.appender.PRODUCT.Append=true
log4j.appender.PRODUCT.DatePattern='.'yyyy-MM-dd
log4j.appender.PRODUCT.Encoding=UTF-8
log4j.appender.PRODUCT.layout=org.apache.log4j.PatternLayout
log4j.appender.PRODUCT.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

log4j.logger.com.ibatis=DEBUG
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.logger.java.sql.ResultSet=INFO
log4j.logger.org.apache=INFO

添加mybatis对jdbclog的支持:(此文件名为:mybatis-config.xml)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPEconfiguration
PUBLIC"-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <!-- 打印查询语句 -->
<setting name="logImpl" value="LOG4J" />
        <setting name="logPrefix" value="com.*.dao."/>
    </settings>
</configuration>

最后在spring读取的context.xml中引入该配置即可.

 

0
1
分享到:
评论

相关推荐

    spring +spring mvc+mybatis +bootstrap 基本整合

    9. **日志管理**:通常项目会包含日志记录,如Log4j或Logback,用于追踪和调试问题。 10. **错误和异常处理**:学习如何配置Spring MVC的全局异常处理器,优雅地处理运行时异常。 这个项目是学习和实践Java Web...

    Maven+Spring+Spring MVC+MyBatis+MySQL,搭建SSM框架环境

    同时,了解日志框架(如Log4j或SLF4J)、单元测试工具(如JUnit)以及集成测试框架(如Spring Boot Test)也是必要的。 总之,SSM框架的组合为Java Web开发提供了一个强大、灵活的基础,帮助开发者高效地构建和管理...

    SSM三大框架整合详细总结(Spring+SpringMVC+MyBatis).pdf

    通过上述介绍,我们可以了解到Spring框架为整个项目提供了基础的服务支持,SpringMVC则负责处理前端请求,MyBatis负责数据持久化操作。在实际开发过程中,还需要根据具体需求进行更详细的配置和优化。例如,可以通过...

    spring+mybatis+jdbc.rar

    综上所述,"spring+mybatis+jdbc.rar"项目是一个基于Java的后端应用,利用Spring的全面功能、MyBatis的简单映射以及JDBC的直接数据库操作,构建了一个适用于中小规模应用的框架。通过合理的架构设计和性能优化,该...

    Spring+SpringMVC+MyBatis

    在实际项目中,开发者通常会配合使用其他工具和库,如Apache HttpClient进行HTTP通信,Log4j或SLF4J进行日志记录,JUnit进行单元测试,以及Maven或Gradle进行项目构建。这些工具与SSM结合,可以构建出功能完备、易于...

    Spring+mybatis环境搭建

    * 日志记录包(jakarta-log4j-1.2.8.zip) Spring 框架的 jar 包 在解压 Spring 框架的压缩包后,可以找到 dist 目录,下面的 jar 包都是 Spring 框架所需的: * org.springframework.aop-3.0.6.RELEASE:提供了...

    springmvc+spring4.1.5+mybatis+maven空项目

    在本项目中,MyBatis 3.2.7版本可能已经集成了Spring,实现了事务管理和DAO层的便捷操作。 Maven是Apache软件基金会开发的项目管理和综合工具,它可以帮助开发者构建、依赖管理和文档生成等工作。Maven使用一个项目...

    整合SSM(Spring+Spring+Mybatis)所有到的jar包和笔记

    SSM(Spring、Spring MVC和Mybatis)是一个广泛使用的Java Web开发框架组合,它通过将这三个组件集成,为开发者提供了一种高效、灵活的后端架构。本文将深入讲解SSM整合过程中的关键知识点,以及涉及到的jar包。 ...

    spring+springmvc+mybatis+mysql 实现多模块聚合项目

    9. **日志管理**:项目中可能会使用Log4j、SLF4J或Logback等日志框架,便于记录和分析运行时信息,帮助调试和问题定位。 10. **安全框架**:Spring Security或者Shiro可以用来实现用户认证和授权,保护系统的安全性...

    Maven+SSM(Spring+springMVC+MyBatis)整合框架

    ### Maven+SSM(Spring+SpringMVC+MyBatis)整合框架详解 #### Maven 安装与配置 在深入SSM框架整合之前,首先需要确保Maven环境的正确安装与配置。 1. **安装Maven** - **前提条件**:安装 JDK 1.7 及以上版本并...

    spring+Springmvc+mybatis整合jar包

    4. **Spring JDBC**和**Spring ORM**:简化数据库操作,支持JDBC模板和各种ORM框架,如Hibernate、MyBatis等。 **SpringMVC**: SpringMVC是Spring框架的一个模块,专为Web应用设计,实现了Model-View-Controller...

    spring+springMVC+mybatis-demo

    它将Spring的IOC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)特性,SpringMVC的Web层处理能力,以及MyBatis的持久层操作结合在一起,为开发者提供了便捷的开发环境。...

    Spring+SpringMvc+MyBatis

    **SSM框架详解** SSM框架,全称为Spring、SpringMVC和MyBatis的集成框架,...在实际开发中,SSM框架的使用还需要配合其他技术,如Maven或Gradle进行项目管理,使用Log4j进行日志记录,以及JUnit和Mockito进行测试等。

    Spring+SpringMVC+MyBatis的整合.pdf

    - 在pom.xml文件中添加SSM及相关的依赖,包括Spring、SpringMVC、MyBatis的版本,以及其他辅助库如Log4j和SLF4J等。 6. **项目结构** - 一个典型的SSM项目目录结构包括src/main/java(存放源代码)、src/main/...

    基于SpringMVC + Spring + Mybatis + Shiro + Bootstrap教务查询系统

    除了以上主要技术,教务查询系统还可能包含其他组件,如JDBC(Java Database Connectivity)用于数据库连接,Log4j或SLF4J用于日志记录,以及JUnit等单元测试工具,确保代码质量。系统可能采用Maven或Gradle进行构建...

    Java+Springboot+Mybatis+Mysql+Bootstrap+Maven实现网上商城系统

    在实际开发过程中,可能还需要涉及安全性(如Spring Security或OAuth2)、日志记录(如Log4j)、缓存(如Redis)等技术。此外,单元测试和集成测试也是保证系统质量的重要环节,可以使用JUnit、Mockito等工具进行...

    Myecilpse上配置好的SSM(spring+springMVC+Mybatis)项目结构,方便直接使用

    此外,开发过程中可能还需要集成测试框架如JUnit,日志框架如Log4j,以及其他的工具库。这个项目结构已经为这些集成做好了准备,只需按照需求添加相应的配置和代码即可。 总之,这个SSM项目结构是为MyEclipse用户...

    ssm jar包 springMvc + spring +mybatis

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

    java后台SSM实战项目,查询和修改

    9. **日志管理**:项目通常会集成Log4j或Logback等日志框架,用于记录运行时的信息,帮助调试和排查问题。 10. **异常处理**:通过自定义异常处理器,可以统一处理后端抛出的异常,提供友好的错误信息给前端。 11....

Global site tag (gtag.js) - Google Analytics