zoukankan      html  css  js  c++  java
  • ssm环境下配置log4j打印mybatis的sql语句

    首先附上官网的说明文档: 
    mybatis Logging 

    环境spring4.3.0+springmvc4.3.0+mybatis3.4.0 
    按官方文档的说明

    1 SLF4J
    2 Apache Commons Logging
    3  Log4j 2
    4  Log4j
    5 JDK logging
    

    mybatis会使用最先找到的(按上文列举的顺序查找),不少应用服务器的classpath中已经包含Commons Logging,如Tomcat和WebShpere, 所以MyBatis会把它作为具体的日志实现。所以我们首先得指定要使用哪个日志框架,因为是在ssm环境中配置,所以没有mybatis-config.xml文件,就不能在里面配置下面几行

    <configuration>
      <settings>
        ...
        <setting name="logImpl" value="LOG4J"/>
        ...
      </settings>
    </configuration>

    那我们就得在web.xml文件中指定使用log4j作为我们的日志框架的实现。 
    web.xml中的配置如下

          <!-- 加载log4j配置文件 -->
        <context-param>
          <param-name>log4jConfigLocation</param-name>
          <param-value>classpath:log4j.properties</param-value>
          <!-- <param-value>/WEB-INF/log4j.xml</param-value> -->
        </context-param>
        <listener>
           <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
        </listener>

    接着在编写log4j.propertes文件 
    log4j.properties

    #定义LOG输出级别
    log4j.rootLogger=INFO,Console,File
    
    #定义日志输出目的地为控制台
    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=[%c]-%m%n
    
    #mybatis显示SQL语句日志配置  
    #log4j.logger.org.mybatis=DEBUG
    log4j.logger.net.cxp.blog.dao=DEBUG
    
    
    #文件大小到达指定尺寸的时候产生一个新的文件
    log4j.appender.File=org.apache.log4j.RollingFileAppender
    #指定输出目录
    log4j.appender.File.File=logs/ssm.log
    #定义文件最大大小
    log4j.appender.File.MaxFileSize=10MB
    #输出所有日志,如果换成DEBUG表示输出DEBUG以上级别日志
    log4j.appender.File.Threshold=ALL
    log4j.appender.File.layout=org.apache.log4j.PatternLayout
    log4j.appender.File.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH:mm|:ss}][%c]%m%n
    

    其中和打印sql语句有关的是下面几句

    #mybatis显示SQL语句日志配置  
    #log4j.logger.org.mybatis=DEBUG
    log4j.logger.net.cxp.blog.dao=DEBUG

    按照官方的配置,应该就写

    log4j.logger.net.cxp.blog.dao=DEBUG

    注:net.cxp.blog.dao是你的dao接口所在的包名 

  • 相关阅读:
    从零开始入门 K8s | 有状态应用编排
    OAM 深入解读:OAM 为云原生应用带来哪些价值?
    你不得不了解 Helm 3 中的 5 个关键新特性
    CNCF 公布 2020 年 TOC 选举结果 | 云原生生态周报 Vol. 36
    调度系统设计精要
    Spring的IOC容器第一辑
    JavaScript工作体系中不可或缺的函数
    教你五步制作精美的HTML时钟
    web前端vertical-align的作用及对象详解
    JavaScript中常见的10个BUG及其修复方法
  • 原文地址:https://www.cnblogs.com/tanzq/p/8411251.html
Copyright © 2011-2022 走看看