我正在寻找在 Hibernate 自动更新表时获取 SQL 更新脚本的方法。
我仅在开发环境中使用 hibernate.hbm2ddl.auto=update
,并且我需要用于更新生产表的 SQL 脚本。
我想要这些 txt 格式的 SQL 脚本以进行修改和潜在的编辑。
如何做到这一点? 感谢您的任何建议。
最佳答案
有一些建议和一般讨论here .
简而言之,您可以打开日志记录(到标准输出):
hibernate.show_sql=true
或者,如果您使用 log4j,您可以将其添加到您的 log4j.properties 文件中:
log4j.logger.org.hibernate.SQL=DEBUG
这两种方法都将输出带参数的 Hibernate 准备好的语句(因此参数值本身不是内联的)。为了解决这个问题,你可以使用像 P6Spy 这样的拦截器。 .可以找到详细信息 here .
关于java - 从 Hibernate 更新获取 SQL 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5093201/