Hibernate的show_sql值是什么意思?

4
这是一个示例,展示了在show_sql=true时如何显示SQL。
Hibernate:
    select
        propertyse0_.entity_name as entity1_3_0_,
        propertyse0_.entity_id as entity2_3_0_,
        propertyse0_.entity_key as entity3_3_0_,
        propertyse0_.key_type as key4_3_0_,
        propertyse0_.boolean_val as boolean5_3_0_,
        propertyse0_.double_val as double6_3_0_,
        propertyse0_.string_val as string7_3_0_,
        propertyse0_.long_val as long8_3_0_,
        propertyse0_.int_val as int9_3_0_,
        propertyse0_.date_val as date10_3_0_
    from
        OS_PROPERTYENTRY propertyse0_
    where
        propertyse0_.entity_name=?
        and propertyse0_.entity_id=?
        and propertyse0_.entity_key=?

是否可以使用SQL查询来显示收集的值,而不是“?”

3个回答

2

您需要设置日志框架以记录此级别的详细信息。请参阅这里,查看Hibernate使用的各种记录器以及如何使用它们。

您需要的特定记录器是:

  • org.hibernate.type - 记录所有JDBC参数

2

将日志级别设置为"TRACE"。

在您的log4j.properties中(假设您使用Log4J):

log4j.logger.org.hibernate=TRACE

将会产生大量的日志记录...


0

不是直接的方式。您可以使用log4jdbc记录通过JDBC发送的所有数据。它具有内联准备语句值的记录器。


可以详细说明如何将现有的应用程序与Spring+Hibernate集成吗? - cometta
我在Spring中为我的数据源创建了一个代理,添加了log4jdbc的日志记录器。我必须承认,这不是10分钟就能完成的。然而,对于我的目的来说,这个工作是值得付出努力的。但是我只是将它包含在我的测试中,而没有放到应用服务器中。 - bertolami

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接