如何在hibernate中使用FetchType.EAGER来仅获取所需的对象

时间:2016-08-19 14:44:55

标签: java hibernate

@Entity
@Table(name="User")
public @Data class User 
{
    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name="ID")
    private long userId;
    @Column(name="FIRSTNAME")
    private String firstName;
    @Column(name="MIDDLENAME")
    private String middleName;
    @Column(name="LASTNAME")
    private String lastName;

    //@JsonIgnore
    @OneToMany(mappedBy="user",cascade = CascadeType.ALL)
    private List<Dependent> dependents;

   //@JsonIgnore
   @OneToMany(mappedBy="user",cascade = CascadeType.ALL)
   private List<Claim> claims;

}

这是我的用户类。我想在某个时候查询User时只获取dependents。我尝试使用FetchType.EAGER。它工作正常。但与此同时,它也在提起诉求。如果我使用延迟加载,则表示“无法写入内容:未能懒惰地初始化角色集合”异常。 我也试过@JsonIgnore,但它不能解决我的问题。请帮忙解决这个问题。

0 个答案:

没有答案