Java Hibernate:Hibernate.hbm2ddl.auto=更新显示生成的sql

Java Hibernate:Hibernate.hbm2ddl.auto=更新显示生成的sql,java,hibernate,hbm2ddl,Java,Hibernate,Hbm2ddl,我想转到Hibernate的 请参阅日志文件中生成的sql语句。是否可以不使用java编码(知道如何使用实现结果,但希望hibernate有“收件箱”解决方案)您可以使用 SessionFactory sf=new Configuration().setProperty(“hibernate.show\u sql”,“true”) 或log4j log4j.logger.org.hibernate.SQL=DEBUG, SQL_APPENDER log4j.additivity.org.

我想转到Hibernate的


请参阅日志文件中生成的sql语句。是否可以不使用java编码(知道如何使用实现结果,但希望hibernate有“收件箱”解决方案)

您可以使用

  • SessionFactory sf=new Configuration().setProperty(“hibernate.show\u sql”,“true”)

  • 或log4j

    log4j.logger.org.hibernate.SQL=DEBUG, SQL_APPENDER   
    log4j.additivity.org.hibernate.SQL=false
    

编辑:这可能也很有用

您还可以在上设置调试断点

org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(boolean, boolean)

看看它是如何运行的。

不幸的是,hbm2ddl忽略了这两个选项。因此,我在日志文件中没有看到任何alter/create语句。@FoxyBOA对于ddl语句,您应该尝试:log4j.logger.org.hibernate.tool.hbm2ddl=debugOr
SchemaExport
,如果这不是更新,而是初始架构创建
org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(boolean, boolean)