我希望传递给Hibernate的SessionFactory休眠:hibernate.hbm2ddl.auto =更新显示生成的SQL
hibernate.hbm2ddl.auto=update
,并查看日志文件中生成的SQL语句。是否有可能W/O Java代码(知道如何与SchemaExport达到的效果,而是希望具有休眠“在”解决方案)
我希望传递给Hibernate的SessionFactory休眠:hibernate.hbm2ddl.auto =更新显示生成的SQL
hibernate.hbm2ddl.auto=update
,并查看日志文件中生成的SQL语句。是否有可能W/O Java代码(知道如何与SchemaExport达到的效果,而是希望具有休眠“在”解决方案)
你可以设置日志记录到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
EDI T:这也许也是有帮助的Hibernate sql logging with values
您还可以设置调试断点
org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(boolean, boolean)
,看看它是如何去。
或'SchemaExport'如果这不是更新,而是初始模式创建 – Thilo 2013-07-29 06:05:40
不幸的是,hbm2ddl忽略了这两个选项。所以我没有在我的日志文件中看到任何alter/create语句。 – FoxyBOA 2010-03-13 08:38:25
@FoxyBOA您应该尝试使用ddl语句: log4j.logger.org.hibernate.tool.hbm2ddl = debug – stacker 2010-03-13 08:45:04