zoukankan      html  css  js  c++  java
  • log4j.properties中的这句话“log4j.logger.org.hibernate.SQL=DEBUG ”该怎么写在log4j.xml里面呢?

    http://www.cnblogs.com/gredswsh/p/log4j_xml_properties.html
    请问:log4j.properties中的这句话“log4j.logger.org.hibernate.SQL=DEBUG  ”该怎么写在log4j.xml里面呢?

    Hibernate 默认是把 SQL 语句是输出到控制台,而控制台中的内容查阅起来并不方便,例如超过控制台缓存的内容会被清掉,不是谁都能看到控制台,难以与时间关联起来。虽然有些应用服 务器会把控制台输出重定向到文件,但总没有 Log4J 或 Slf4J 那样的专业日志工具来得便捷。

    因为 Hibernate 在输出 SQL 时使用的 logger 名为 org.hibernate.SQL, 所以想要让 SQL 语句输出到 Log4J 或是 Slf4J 日志中(日志文件或是记在别处,由 Appender 决定的),只要在 log4j.properties(log4j.xml 参考相应配置) 中加上:

     log4j.logger.org.hibernate.SQL=DEBUG

    记得同时把 Hibernate 配置文件中(或者 Spring 中关于 Hibernate 的配置中) 的 hibernate.show_sql 设置为 false,不然可能在控制台下会有双份输出(Log4J 配置了 ConsoleAppender 时)。

    如果就用的是 Log4Back 的话,就在 Log4Back 的配置文件 log4back.xml 中加上:

    <logger name="org.hibernate.SQL" level="DEBUG"/>

    如果是log4j.xml就要加入这个配置:
    <category name="org.hibernate.SQL">  
         <priority value="DEBUG"/>  
          <!--   
              如果指定一个appender,这些log将被输出到指定的appender   
              如:<appender-ref ref="myFile"/>     
              否则将作用于所有的appender   
           -->  
       </category>  
    xml详细配置见:www.cnblogs.com/gredswsh/p/log4j_xml_properties.html
  • 相关阅读:
    Spring面试,IoC和AOP的理解
    WEB打印(jsp版)
    Spring事务管理机制的实现原理-动态代理
    spring面试题
    oracle PLSQL基础学习
    oracle创建表空间
    WM_CONCAT字符超过4000的处理办法
    Oracle 数据泵使用详解
    Oracle 数据泵详解
    linux下启动oracle
  • 原文地址:https://www.cnblogs.com/gredswsh/p/log4j-logge-org-hibernate-SQL-DEBUG.html
Copyright © 2011-2022 走看看