Log4Jdbc是可以拦截JDBC调用并记录信息的JDBC代理驱动程序,例如DB中执行的确切SQL和SQL时序信息。
好的是Log4Jdbc可以在同一行记录绑定参数的实际值。它大大提高了可读性IMO与内置的hibenrate日志记录绑定参数显示为“?”并且绑定参数的实际值以不同的行显示。
通过将日志记录器jdbc.sqlonly
的日志记录级别设置为ERROR
,可以限制仅在抛出异常时记录SQL。
以下是使用log4jdbc和log4j设置日志记录的简要要点。具体配置,可以参考official site
1.更改使用Log4Jdbc的JDBC驱动程序:
<property name="connection.driver_class">net.sf.log4jdbc.DriverSpy</property>
2.对于您所使用的JDBC URL,与JDBC替换为jdbc: log4jdbc,例如:
<property name="connection.url">jdbc:log4jdbc:postgresql://localhost:5432/Test?protocolVersion=2</property>
3.Configure用于log4j.properties
不同记录器的记录级别。例如,只记录时,抛出异常的SQL:
log4j.logger.jdbc.sqlonly=ERROR
是的,你可以 http://stackoverflow.com/questions/2536829/hibernate-show-real-sql – osdamv
@osdamv:那会告诉我所有的sql语句,而我只对sql语句感兴趣抛出一个Hibernate异常。 – Eleco
你可以把一个断点... – osdamv