有没有办法正确生成多个模式的JPA实体?

时间:2013-11-04 10:51:37

标签: java eclipse jpa entity joincolumn

我有一个大型数据库,分为几个模式。从eclipse向导(JPA Tools)我生成一个模式的JPA实体,但是有些表依赖于其他模式中的其他表,问题是这些实体是这样创建的:

//Foreign Key of one table in other schema
@Column(name="TABLE_ID")
private BigDecimal tableId;

我认为必须以这种方式生成:

//Foreign Key of one table in other schema
@JoinColum(name="TABLE_ID")
private TableClass tableId;

第二种方式比第一种方式更正确吗?有没有办法以第二种方式自动生成JPA实体?

1 个答案:

答案 0 :(得分:0)

当jdbc连接中没有对 TableClass 的可见性时,会生成ID而不是实际的实体关系。为这些表创建公共同义词(或等效的)可能有所帮助。即使选择性地选择表格,也可以通过逆向工程观察到这种行为。通常以您当前正在经历的方式生成对未选择表的实体关系

例如因为有两个表人和地址以及从地址到人的链接..

选择Person和Address将在地址中生成适当的实体关系,如

private Person person;

另一方面,选择Just Address只会创建一个到原始类型的映射,因为JPA Tools不会生成Person实体

private BigDecimal personId;

这似乎是你的案件中发生的事情

`