我正在使用hibernate-annotation(entitymanager)来使用单独的模式处理我的db2数据库。
我的主要架构被称为“mainschema”。它有一个用于文件上载的表。
然后我有一些其他架构(schema1,schema2,schema3,schemaN)。
如何判断schemaN上的多对一关系以引用“mainschema”上的文件表。如果我打开连接,我会告诉使用哪个架构。但是多对一仍在使用该模式,而fileupload表仅在“mainschema”中可用
感谢您的帮助!
编辑:
我的fileupload hibernate bean使用显式主模式:
@Entity
@Table(name="DOKUMENT", schema="mainschema")
然后我为每个客户端都有一个架构,请看这里: 架构未在bean中设置。它是在连接打开的时间设置的。
@Entity
@Table(name="SOMETABLE")
此表“SOMETABLE”存在于每个客户端的每个模式中。 它指的是具有多对一
的dokument实体@Many-To-One
@JoinColumn(name="DOKUMENT_ID")
public Dokument getDokument() { return dokument }
public void setDokument() { this.dokument = dokument }
问题可以结束。它没有任何变化,因为hibernate仍在自动使用“mainschema”。
答案 0 :(得分:1)
这是如何将SchemaN映射到MainSchema一对多
@Entity
public class SchemaN{
@OneToMany(targetEntity=MainSchema.class, mappedBy="pk_SchemaN")
private List<MainSchema> ms;
...
}
@Entity
public class MainSchema{
@ManyToOne
@JoinColumn(name="FK_MainSchema")
private SchemaN pk_schemaN;
...
}
希望这可以帮助您对任何Schema1到N
应该是相同的