Hibernate多租户命名策略

时间:2018-11-13 10:15:10

标签: java mysql hibernate hibernate-mapping multi-tenant

我正在构建一个应用程序,其中多个租户在数据库实例(相同的mysql数据库)上具有自己的表集。我希望表的命名如下:tenantA_users, tenantA_orderstenantB_users, tenantB_orders

我尝试实现类似this的方法,但似乎Configuration conf = new Configuration().configure();legacy way to bootstrap

是否有一种方法可以将Interface PhysicalNamingStrategy设置为非静态的,所以我可以将tenantName字符串附加到类中提供的带注释的@Table名称上?

例如:

@Entity
@Table(name = "custom_order")
public class CustOrder {

我希望命名为tenantA_custom_order tenantB_custom_order,而不是tenantA_CustOrder

1 个答案:

答案 0 :(得分:0)

我使用MetadataBuilder applyPhysicalNamingStrategy(PhysicalNamingStrategy namingStrategy)

完成了任务

这样,我可以将tenantName字符串发送到namingStragegy构造函数。