我想使用 JPA 向 MySQL 表添加新列。我怎样才能实现它?
我担心的是,即使表可以更新,我如何更新实体以便该列可用于使用 JPA 进行查询?或者还有其他解决方案吗?
最佳答案
有多种方法可以实现此目的,主要是通过 persistence.xml
中的属性。一种标准方法是使用 javax.persistence.schema- Generation.scripts.create-script-source ,它可能会也可能不会在每次启动 Web 应用程序时运行,很可能会导致启动时出现异常-up 并可能破坏您的数据。
在 Hibernate 中,您可以使用 hibernate.hbm2ddl.auto
来更新
,使其根据您的实体更新表。
在 EclipseLink 中有一个 eclipselink.ddl- Generation
属性。 create-or-extend-tables
设置似乎合适。
http://www.eclipse.org/eclipselink/documentation/2.4/jpa/extensions/p_ddl_generation.htm
但是,一般来说,使用 JPA 维护架构不如在更新生产服务器的 Web 应用程序时使用预先编写的脚本手动更新架构可靠。
关于mysql - 通过JPA向MySQL添加新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39844695/