【发布时间】:2014-06-30 19:56:17
【问题描述】:
我有三个 A、B、C 类
public class A{
@Id
@Column(name = "id", insertable = false, updatable = false)
private String id;
@Column(name = "bid", insertable = false, updatable = false)
String b_id
}
public class B{
@id
@Column(name = "id", insertable = false, updatable = false)
private String id;
@Column(name = "cid", insertable = false, updatable = false)
String c_id;
}
public class C{
@Id
@Column(name = "id", insertable = false, updatable = false)
private String id;
@Column(name = "property", insertable = false, updatable = false)
private String property
}
我想从 A Hibernate pojo c.property 中选择一次
我注意到我无法通过使用@JoinTable 来实现它,因为 B 主键不是 a 和 c 键的组合。
我想过做下一个:
-
将
@loader与 namedQuery 一起使用。这似乎是个坏主意,我希望在每次选择时都将创建名为 namedQuery 的表@Entity @Table(name = "A&B&C") @Loader(namedQuery = "all") @NamedNativeQuery(name = "all", query = "select * from A a join B b on a.bid = a.aid join C c on b.cid = c.id ) 可以使用@SecondaryTables 吗? 3 ?
还有其他好的解决方案吗?
10 倍。
【问题讨论】:
标签: hibernate hibernate-mapping