• log4jdbc 使用


    像 hibernate, mybatis 都是不打印真正执行的sql的,所以借助 log4jdbc 打印sql以及统计执行时间是非常方便的。

    配置log4jdbc 有很多种方法,比如通过spring的拦截器。最简单的方法就是在jdbc.url 连接参数加上log4jdbc,然后引入相应的log4jdbc包即可。

    COMMENT 原连接参数:
    jdbc.url=jdbc:mysql://127.0.0.1:3306/theme?characterEncoding=utf-8
    
    
    
    COMMENT 加入log4jdbc后的连接参数:
    jdbc.url=jdbc:log4jdbc:mysql://127.0.0.1:3306/theme?characterEncoding=utf-8

    引入jar包

    <!-- log4jdbc -->
    <dependency>
        <groupId>com.googlecode.log4jdbc</groupId>
        <artifactId>log4jdbc</artifactId>
        <version>1.2</version>
        <scope>runtime</scope>
    </dependency>

    我用logback,所以还要引入logback 和 slf4j-api包。

    因为log4jdbc 默认输出很多日志,所以需要配置,可以通过新建 log4jdbc.properties 配置,也可以通过logback.xml文件里配置, 用log4j的则是通过log4j.properties 或log4j.xml配置。

    <!-- -->
    <logger name="jdbc.sqlonly" level="WARN"/>  
    <logger name="jdbc.sqltiming" level="INFO"/>  
    <logger name="jdbc.resultsettable" level="INFO"/>  
    <logger name="jdbc.resultset" level="WARN"/>  
    <logger name="jdbc.connection" level="WARN"/>  
    <logger name="jdbc.audit" level="WARN"/>
    
    
    <!-- 或者关闭不必要的 -->
    <logger name="jdbc.connection" level="OFF" />
    <logger name="jdbc.audit" level="OFF" />
    <logger name="jdbc.resultset" level="OFF" />
    <logger name="jdbc.sqlonly" level="OFF" />
    <logger name="jdbc.sqltiming" level="INFO" />
    <logger name="jdbc.resultsettable" level="INFO"/> 

    参考资料:

      http://www.jialeens.com/archives/720.html

      https://github.com/arthurblake/log4jdbc/blob/wiki/ProjectHome.md

      http://badqiu.iteye.com/blog/743100

  • 相关阅读:
    Windows各个文件夹介绍
    Zabbix使用外部命令fping处理ICMP ping的请求
    QT 样式表实例
    QT 样式表基础知识
    cocos2d-js入门一
    try throw catch typeid
    cocos2d-x入门三 分层设计框架
    cocos2d-x入门二 helloworld实例运行与创建
    cocos2d-x入门一
    批量操作QT UI中的控件
  • 原文地址:https://www.cnblogs.com/xunux/p/5358631.html
Copyright © 2020-2023  润新知