配置log4j2.xml 打印hinernate sql 参数

使用hibernate4 和slf4j / log4j2,在log4j2.xml 中配置:

<Logger name="org.hibernate.type.descriptor.sql.BasicBinder" level="trace" additivity="false"> 
    <AppenderRef ref="Console"/> 
</Logger> 
<Logger name="org.hibernate.type.EnumType" level="trace" additivity="false"> 
    <AppenderRef ref="Console"/>
</Logger>

看了好多文章都是这样配置,但是怎么都不生效,历尽千辛万苦,发现需要配置vm参数:                   

-Dorg.jboss.logging.provider=slf4j

由于hibernate 使用jboss log,而JBoss Logging记录的日志现在实际上都将通过slf4j传递。

哇,终于可以sql打印参数了 

Hibernate: 
select id,detail from system where type=?
10:31:19,510 TRACE BasicBinder:81 - binding parameter [1] as [INTEGER] - [8]

猜你喜欢

转载自blog.csdn.net/janet1100/article/details/109613589