【发布时间】:2015-05-19 22:07:40
【问题描述】:
我目前正在为基于 Spring 的插件系统开发原型。这个想法是插件可以使用 JPA 实体和 liquibase 更改日志来维护数据库结构。为了将插件创建的表与核心系统的表分开,插件应该被强制使用前缀作为表名。
对于可以通过使用命名策略轻松归档的 JPA/Hibernate。但我找不到为 liquibase 变更集存档的方法。
例如插件定义了如下的变更日志
<changeSet id="2015-03-17-00-01" author="foo">
<createTable tableName="fooentity">
<column name="id" type="INT">
<constraints primaryKey="true" nullable="false" />
</column>
<column name="name" type="VARCHAR(100)">
<constraints nullable="false" />
</column>
</createTable>
</changeSet>
应该使用名称“plugin_fooentity”创建表。插件本身不应该知道任何关于前缀的信息,因为前缀是由插件/核心系统给出的。
如果有人能给我一个可能的解决方案的提示,那就太好了。
【问题讨论】:
标签: liquibase