Java Hibernate映射表列来自不同的模式

时间:2017-03-05 14:12:13

标签: java postgresql hibernate multi-tenant

我正在使用postgresql的hibernate,我有以下问题。参加比赛和参赛作品:

public class Contest{ @Id @GeneratedValue(generator = "uuid2") @GenericGenerator(name = "uuid2", strategy = "uuid2") @Type(type = "uuid-binary") private UUID uuid; @OneToMany(mappedBy="contest") private List<Entry> entries; @Column(name = "status") private ContestStatus status; ...

public class Entry{
    @Id
    @GeneratedValue(generator = "uuid2")
    @GenericGenerator(name = "uuid2", strategy = "uuid2")
    @Type(type = "uuid-binary")
    private UUID uuid;
    @ManyToOne()
    @JoinColumn("contest")
    private Contest contest;
    @Column(name = "status")
    private EntryStatus status;

我正在使用SCHEMA多租户,每个用户都有自己的架构,但我不希望任何用户可以创建比赛。这是管理员可以做的事情。假设我们有admin用户admin_schema,用户&#34; user123&#34;使用模式user123_schema想要加入到admin_schema的竞赛表中可用的竞赛。所以,我在条目表中需要这样的东西:

@ManyToOne(schema="admin_schema")
@JoinColumn("contest')
Contest contest;

我知道&#34;架构&#34; @ManyToOne中不存在属性,只是试图展示我想要完成的任务。有办法吗? 在我看来,似乎没有什么可以做的,但想在以不同的方式做之前检查它

0 个答案:

没有答案