如何在JPA中定义单向一对多关系
我在JPA中的实体映射方面遇到了以下问题。我有两个实体,第一个是查找,第二个是文本,它代表实体的翻译。现在我需要将查找绑定到文本,但我不希望文本引用查找。为了使此操作更加复杂,Text 在此关系中不使用其主键,而是在列中定义的元代码。TXTHEAD_CODE
Lookup.java
@Entity
@Table(name = "DATREG")
public class Lookup implements PersistableEntity {
@Id
@Column(name = "DATREG_META_CODE")
private String metaCode;
@OneToMany
@JoinTable(name="TXT",
joinColumns=@JoinColumn(name="DATREG_META_CODE", referencedColumnName="TXTHEAD_CODE"),
inverseJoinColumns=@JoinColumn(name="DATREG_META_CODE"))
private List<Text> text;
Text.java
@Entity
@Table(name = "TXT")
public class Text {
@Id
@Column(name = "TXT_ID")
private Long id;
@Column(name = "TXTHEAD_CODE")
private String code;
所以我尝试了这个(以及一些其他变体),但没有结果。我也无法在数据库中创建联接表,并且不希望将查找绑定到我的 Text 类。那么,任何人都可以告诉我是否有其他方法吗?