在Hibernate的hibernate.cfg.xml
配置文件中将show_sql
属性设置为true
,可以查看Hibernate生成的SQL语句。但是,生成的SQL可能并不总是易于阅读的格式。
要查看直接传递给数据库的实际SQL语句,您可以:
log4j.properties
文件启用以下类别的日志记录:<code>log4j.logger.org.hibernate.SQL=DEBUG log4j.logger.org.hibernate.type=TRACE</code>
第一个类别等同于hibernate.show_sql=true
,而第二个类别则打印绑定参数和其他信息。
使用第二种方法,您可能会看到以下输出:
<code>2023-02-27 16:01:18,226 DEBUG org.hibernate.SQL - select employee.code from employee where employee.code = ? 2023-02-27 16:01:18,232 TRACE org.hibernate.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [12]</code>
这将为您提供“真实”的SQL,类似于:
<code>select employee.code from employee where employee.code=12</code>
以上是如何查看Hibernate实际生成的SQL?的详细内容。更多信息请关注PHP中文网其他相关文章!