怎样把hibernate产生的SQL语句,输出到log4j文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样把hibernate产生的SQL语句,输出到log4j文件相关的知识,希望对你有一定的参考价值。

参考技术A

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 或 Slf4J 跑而已,像:

以上是关于怎样把hibernate产生的SQL语句,输出到log4j文件的主要内容,如果未能解决你的问题,请参考以下文章

Hibernate 基础

Hibernate常用配置

HIBERNATE怎样查看sql语句

07-hibernate进阶

hibernate打印SQL及参数

关于hibernate的show sql