Hibernate JPA@OneToMany集合为空

Hibernate JPA@OneToMany集合为空,hibernate,jpa,Hibernate,Jpa,我有这两个实体 允许 @Entity @Table(name = "PERMITS") public class Permit extends AbstractEntity<Long> { @ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name="USR_ID") private User user; 或者使用任何其他方法时,允许属性始终为null。我可以理解它是否是某个PersistentBag,但它是空的

我有这两个实体 允许

@Entity
@Table(name = "PERMITS")
public class Permit extends AbstractEntity<Long> {
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name="USR_ID")
    private User user;
或者使用任何其他方法时,允许属性始终为null。我可以理解它是否是某个PersistentBag,但它是空的,并且当我将新的ArrayList分配给它时,它不会被覆盖,所以hibernate似乎对此属性不做任何操作。 从另一边看(从许可证上看),它可以正常工作。当我这样做的时候

entityManager.createQuery("SELECT p FROM Permit p")
我看到所有许可证都有抓取的用户。
我的地图怎么了

如果没有
JOIN FETCH u.permissions
,您应该能够从
User
请求
permissions
从User u选择u
我不是。如果我使用或不使用获取来查询用户,则许可证为空。请在删除
@OrderBy(“角色ASC”)
后重试。删除@OrderBy无效。正确定义了getter和setter吗?
entityManager.createQuery("SELECT u FROM User u JOIN FETCH u.permits")
entityManager.createQuery("SELECT p FROM Permit p")