我是EclipseLink的新手。
我想知道:
是否可以从2个不同的数据库创建实体?如果有,怎么样? (示例请)
让我说我有Database1和Database2,是否可以创建复合单元,其数据库1中实体1的一个字段是数据库2中的实体2.如果是,如何(例如请)
非常感谢
答案 0 :(得分:0)
假设同一服务器上有两个不同的模式,您应该能够使用@SecondaryTable注释来执行此操作,该注释允许您将一个实体映射到两个或更多个表。注释允许您指定包含辅助表的模式或目录。
https://docs.oracle.com/javaee/5/api/index.html?javax/persistence/SecondaryTable.html
看起来像:
@Entity
@Table(name = "main_table")
@SecondaryTable(name="secondary_table", schema="secondary_schema")
public class MyEntity{
@Column(name = "my_field", table="secondary_table")
private String fieldFromSecondaryTable;
}
如果您正在谈论两个不同的服务器,那么您可以查看在数据库级别执行的操作,这将允许您创建数据库视图,然后将实体映射到此视图。这适用于读操作但不确定写...
例如,在SQL Server中,您将考虑创建链接服务器: