我有一个控制数据 DB-TABLE 实体
@Table(name = "A")
class A {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "A_OID")
private Long pk;
}
和一个引用上述 DB-TABLE 和其他一些的 DB-VIEW 实体
@Table(name = "A_VIEW")
class ARef {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "A_OID")
private Long pk;
private String value;
}
从其中value
加入了一些。pk
指的是同一行。我怎样才能保存我的实体B
,指的是ARef
,使用A
,像这样:
class B {
public ARef a;
}
A a = em.find(A.class, pk);
B b = new B();
b.a = a; // How to do this? Using pk somehow?
还有更多的东西,所以不能简单地ARef a = em.find(ARef.class, pk);
代替。
我知道 OpenJPA 中有某种类型的“本机 SQL”支持,但这太低级了。