java - 执行 JPA 一对一时引用的属性未知

标签 java sql spring jpa hibernate-mapping

我有这 2 个实体,我想在执行 JPA 一对一时使用 SQL 数据库中的 @OneToOne 进行映射(表中的一条记录恰好对应于相关表中的一条记录)

这是我如何创建@OneToOne关系

@Entity
@Table(name = "IMP_Radio")
@NamedQuery(name = "ImpactRadio.findAll", query = "SELECT ia FROM ImpactRadio ia ")
public class ImpactRadio implements Serializable, IEntity<String> {

    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    @Id
    @Column(name = "ID")
    private String id;

    @OneToOne(mappedBy = "impactRadio", fetch = FetchType.EAGER)
    @JoinColumn(name = "IA_ID")
    private ImpactRadioAmendment amendments;

    @OneToOne(mappedBy = "impactRadio", fetch = FetchType.EAGER)
    @JoinColumn(name = "IA_ID")
    private ImpactRadioExamination examinations;


}




@Entity
@Table(name = "IMP_Radio_EXAMINATION")
public class ImpactRadioExamination implements Serializable, IEntity<String> {

    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    @Id
    @Column(name = "ID")
    private String id;

    @OneToOne(cascade = {CascadeType.PERSIST, CascadeType.REMOVE})
    @JoinColumn(name = "IA_ID")
    private ImpactRadio ImpactRadio;

}


But I have an exception when I try to run a Junit test
Caused by: org.hibernate.AnnotationException: 
Unknown mappedBy in: com.tdk.persistence.fire.model.ImpactRadio.examinations, 
referenced property unknown: com.tdk.persistence.fire.model.ImpactRadioExamination.impactRadio

最佳答案

这是因为这里需要传递字段名称:

@OneToOne(mappedBy = "impactRadio", fetch = FetchType.EAGER)
@JoinColumn(name = "IA_ID")
private ImpactRadioAmendment amendments;

@OneToOne(mappedBy = "impactRadio", fetch = FetchType.EAGER)
@JoinColumn(name = "IA_ID")
private ImpactRadioExamination examinations;

而实际字段是大写的:

@OneToOne(cascade = {CascadeType.PERSIST, CascadeType.REMOVE})
@JoinColumn(name = "IA_ID")
private ImpactRadio ImpactRadio;

ImpactRadio 重命名为 impactRadio

关于java - 执行 JPA 一对一时引用的属性未知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54810348/

相关文章:

java - Android:构建字符串引用

sql - Postgresql 查询以在文本字段中搜索多个字符串

java - RepositoryItemReader : java. util.ArrayList 无法转换为 org.springframework.data.domain.Page

java - do-while 错误 boolean 值?

java - 构建图形数组

java - 如何实现与@JsonUnwrap 等效的 Gson

mysql - 两个表中的匹配行并将它们显示为新行

java - 多线程: Multiple threads interacting with same table

java - Spring Boot自定义查询分组依据和计数

java - Spring数据查询的最大限制和条件