我们可以将多个JPA持久性单元指向同一个数据库,在不同的Java项目中同时部署在服务器上吗?同时我的意思是,不是在同一秒部署,而是部署在一起。我正在使用hsqldb数据库。
我的项目有一个客户端 - 服务器模型。我有一个统一的数据库表,其中服务器填充数据,然后客户端访问不同项目中的数据。我可以通过服务器成功填充数据库。但是当我部署客户端项目时,数据库中的所有数据都会被删除。
我正在使用<property name="hibernate.hbm2ddl.auto" value="update" />
这两个持久性单元。
答案 0 :(得分:3)
我们可以将多个JPA持久性单元指向同一个数据库,在不同的Java项目中同时部署在服务器上吗?
只要您在两个项目中都没有不兼容的映射,这应该可行。但是,您将无法使用二级缓存。
但是当我部署客户端项目时,数据库中的所有数据都会被删除。 (...)
这并不是我期望将hbm2ddl.auto
设置为update
时所期望的行为,但我不知道在“类似群集”的环境中使用时行为是否已定义良好(有几个JVM在同一时间执行更新)。
在服务器部件初始化完成后部署客户端会发生什么?
我的建议:
update
(尽管如果一个接一个地完成这不应该是一个问题)。update
at all on production database。