【问题标题】:Hibernate: hibernate.hbm2ddl.auto=update show generated sqlHibernate: hibernate.hbm2ddl.auto=update 显示生成的 sql
【发布时间】:2011-01-27 02:52:34
【问题描述】:

我想传给Hibernate的SessionFactory

hibernate.hbm2ddl.auto=update

并在日志文件中查看生成的 sql 语句。是否可以不使用java编码(知道如何使用SchemaExport实现结果,但希望hibernate有“in box”解决方案)

【问题讨论】:

    标签: java hibernate hbm2ddl


    【解决方案1】:

    你可以设置日志到 System.out 使用

    • SessionFactory sf = new Configuration().setProperty("hibernate.show_sql", "true")

    • 或log4j

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

    编辑:这可能也有帮助 Hibernate sql logging with values

    【讨论】:

    • 不幸的是,hbm2ddl 忽略了这两个选项。所以我在日志文件中看不到任何更改/创建语句。
    • @FoxyBOA 对于您应该尝试的 ddl 语句:log4j.logger.org.hibernate.tool.hbm2ddl=debug
    【解决方案2】:

    你也可以设置调试断点

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

    看看进展如何。

    【讨论】:

    • SchemaExport,如果这不是更新而是初始架构创建
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-13
    • 1970-01-01
    • 2014-07-02
    • 2011-01-02
    相关资源
    最近更新 更多