JPA OneToOne关系未获取目标实体OneToMany数据

我遇到了一些JPA关系问题,如下所示。 共有4个表格,如下所示。 表a,表b,表c,表b_c

我的查询是在读取对象A时,我得到了B的数据,而没有得到List cList的数据,它以空List的形式给出。 但是当我直接在B上获得调用时,我得到cList的数据。我可以知道这是怎么回事。我的目标是读取对象a应该获取cList的数据以及保持以下相同的关系。

我尝试了所有可能的选择,但没有运气。

@Table(name = "a")
public class A {

  @Id
  @Column(name = "id")
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  private Long id;

  @Column(name = "bid")
  private String bid;

  @Column(name = "aid")
  private String aId;

  @OneToOne
  @LazyCollection(LazyCollectionOption.FALSE)
  @JoinColumn(name = "bid",referencedColumnName = "bid",insertable = false,updatable = false)
  private B b;
}

@Table(name = "b")
public class B{

  @Id
  @Column(name = "id")
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  private Long id;

  @Column(name = "bid")
  private String bid;

  @OneToMany(cascade = CascadeType.ALL,fetch = FetchType.EAGER)
  @JoinTable(name = "b_c",joinColumns = {
          @JoinColumn(name = "bid",referencedColumnName = "bid")},inverseJoinColumns = {
          @JoinColumn(name = "cid",referencedColumnName = "cid",unique = true)})
  private List<C> cList;

}


@Table(name = "c")
public class C{

  @Id
  @Column(name = "id")
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  private Long id;

  @Column(name = "cid")
  private String cid;
}

期望读取类A,以如上所述获取B和B_C关系的数据。

wuya790 回答:JPA OneToOne关系未获取目标实体OneToMany数据

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3133516.html

大家都在问