选择嵌入JPA的实体

选择嵌入JPA的实体,jpa,jpql,Jpa,Jpql,我有个人实体和嵌入地址: public class Person { private String name; @Embedded private Address address; } @Embeddable @Access(AccessType.FIELD) public class Adress { private String city; } 当我使用JPQL选择我的人员时: Query q = em.createQuery("FROM Person");

我有个人实体和嵌入地址:

public class Person {
    private String name;
    @Embedded
    private Address address;
}
@Embeddable
@Access(AccessType.FIELD)
public class Adress {
    private String city;
}
当我使用JPQL选择我的人员时:

Query q = em.createQuery("FROM Person");
我没有获得地址(作为RESTAPI中的JSON字符串)

我试过:

Query q = em.createQuery("FROM Person p JOIN FETCH p.address");

但是不可能

JPQL不能以“FROM”开头。“从人员p中选择p”是最低要求。任何像样的JPA文档都会告诉你这一点。你也在问问题吗?“但是没有办法”在不告诉人们发生了什么的情况下意义不大……“来自人”的效果相当不错。pb是指当我将浏览器指向RESTURI以获取我的个人实体时,我看不到地址。我不是这么说的。仔细阅读JPQL,您会发现它不是有效的JPQL,在其他JPA实现中也不起作用。如果你想将这个问题标记为Hibernate而不是JPA/JPQL,那么你可以这样做,但是当你将这个问题标记为Hibernate时,它是错误的。啊,现在我明白了。谢谢