我有一个关于 HQL 的问题。假设,我有两个表。例如,表“人员”和表“手机号码”。一个人多个手机号码。关系是@OneToMany
。
在我的 Person.java 类中,这是一个实体,我有一些字段,其中一个字段是
List<MobileNumber> mobiles; // (list of mobile numbers).
问题是这样的:我想在 HQL 中访问 MobileNumber.java 类的字段之一。像这样 :
Query = EntityManager.createQuery("select p.someField from Person where p.mobiles.someField = "value" );
MobileNumber 对象映射到 Person 对象。正如我提到的关系是 OneToMany 和 Person 包含 MobileNumbers 列表。如果关系是 OneToOne 或 ManyToOne,这不是问题,因为在这种情况下,Person 对象只包含一个 MobileNumber 对象。
提前致谢。