• 08 MyBatis——lo4j日志启用


    引入

    在全局配置中,我们可以开启MyBatis的日志功能,前面我们也看到,MyBatis的依赖包有很多是日志包,其中就包含log4j。

    导入log4j配置文件

    放在src目录下,不可更改路径。

    配置文件名为:log4j.properties 不可更改文件名

    log4j.rootCategory=ERROR, CONSOLE,LOGFILE
    
    log4j.logger.cn.xiaohei.PeopleMapper.selAll = DEBUG
    log4j.logger.cn.xiaohei.PeopleMapper = DEBUG
    log4j.logger.cn.xiaohei = DEBUG
    
    log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
    log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
    log4j.appender.CONSOLE.layout.ConversionPattern=-%p-%d{yyyy/MM/dd HH:mm:ss,SSS}-%l-%L-%m%n
    
    
    log4j.appender.LOGFILE=org.apache.log4j.FileAppender
    log4j.appender.LOGFILE.File=D:/axis.log
    log4j.appender.LOGFILE.Append=true
    log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
    log4j.appender.LOGFILE.layout.ConversionPattern=-%p-%d{yyyy/MM/dd HH:mm:ss,SSS}-%l-%L-%m%n
    

      

    配置xml文件

    在项目中MyBatis的全局配置xml文件中,添加如下:

    其中,name值与value值有严格规定,具体参考MyBatis的api中的configuration xml一节,如图。

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

      

    值得注意的是:DTD文档是对格式有严格要求的,在MyBatis.xml中,Configuration标签下的标签必须按如下规则和顺序来写:

    问号表示0次或1次。

    如果出现+ * 等,均按正则表达式中的理解。 

    调用

    以上配置完成后,无需手动调用对象进行日志记录,MyBatis会自动按照配置来进行日志记录。

    某次记录展示如下:

    -DEBUG-2020/03/04 15:52:43,534-org.apache.ibatis.logging.jdbc.BaseJdbcLogger.debug(BaseJdbcLogger.java:159)-159-==> Preparing: select * from people;
    -DEBUG-2020/03/04 15:52:43,567-org.apache.ibatis.logging.jdbc.BaseJdbcLogger.debug(BaseJdbcLogger.java:159)-159-==> Parameters:
    -DEBUG-2020/03/04 15:52:43,593-org.apache.ibatis.logging.jdbc.BaseJdbcLogger.debug(BaseJdbcLogger.java:159)-159-<== Total: 1

    log4j.peoperties配置文件详解

    此配置文件中,第1行为全局配置,ERORR表示日志执行的最低级别,级别相关概念请跳转 这里

    第3-5行为自定义路径的级别

    第3行:方法级,它详细到Mapper下的某个方法,只有这个方法被执行,在它对应的级别(此文件中为debug级别)及以上级别中触发日志行为。

    第4行:类级,该类下面的全部方法对指定的级别(此文件中为debug级别)及以上级别触发日志行为。

    第5行:包级,该包下面所有类对指定的级别(此文件中为debug级别)及以上的级别触发日志行为。

    注:前面的 log4j.logger 为固定写法

  • 相关阅读:
    数据类型
    泛型
    如何同步ORACLE和sqlserver的数据
    JBOss 端口没占用!
    Oracle数据库启动流程
    无法通过 128 (在表空间 TEMP 中) 扩展 temp 段
    数组的选择排序和冒泡排序
    Java条形码生成方案及二维码要点
    更改表字段的长度
    jquery 产品查看放大镜组件
  • 原文地址:https://www.cnblogs.com/Scorpicat/p/12410024.html
Copyright © 2020-2023  润新知