我可以从嵌入式访问root实体吗?

时间:2018-03-29 10:51:35

标签: java hibernate jpa spring-data

是否可以从Embedded对象访问root实体? 我的目标是将一个大类提取成一个小类,任何替代Embedded对象都可以。

@Entity
public class Address{
  @Embedded
  private City city;
}

public class City{
   private Address address; // I would like to access Address here
}

收到错误

Caused by: org.hibernate.MappingException: Could not determine type for Address in City

1 个答案:

答案 0 :(得分:0)

不可能,因为可嵌入对象是db中root实体的一部分。它们存储在同一个表中。您可以在select之后手动设置它,或在代码中使用root实体并通过root实体获取city。如果您想从城市链接到Address,请将City设为具有双向关系的实体

<强> UPD

您可以在可嵌入对象中使用@Parent注释。这是休眠注释