使用 QueryDSL,Hibernate OneToMany 为空

问题描述

下午好,我目前正在用spring、querydsl、hibernate开发但是今天停了,因为在查询数据库的时候我发现它只获取了一些值,有一些值我的意思是List类型没有获取它们,它们代表与其他表的关系,我想澄清一下,我有带有复合主键的表。

public class TblOT{

  @EmbeddedId
  protected TblOTPK tblOTPK;

  @OnetoMany(cascade = CascadeType.ALL,fetch=FetchType.LAZY,mappedBy = "tblOT")
  private List<TblOTDetalle> tblOTDetalleList;
}
public class TblOTPK{

  @Basic(optional = false)
  @Column(name = "si_idSucursal")
  private short siidSucursal;

  @Basic(optional = false)
  @Column(name = "i_idOT")
  private int iidOT;
}
public class TblOTDetalle{
  @ManyToOne(fetch = FetchType.LAZY)
  @JoinColumns({
    @JoinColumn(name = "si_idSucursal",referencedColumnName = "si_idSucursal",insertable = 
    false,updatable = false),@JoinColumn(name = "i_idOT",referencedColumnName = "i_idOT",insertable = false,updatable = false)})
  private TblOT tblOT;
}

这些是我的类,当我运行以下查询时,我会检查它是否获取了所有数据并且只获取了那些不是关系列表的数据。

public List<TblOT> findByLateDate() throws ParseException{
    
    JPAQuery query = new JPAQuery(this.getEm());
    QTblOT qtblOT = new QTblOT("qtblOT");
    
    
    
    query.from(qtblOT);
    query.where(qtblOT.dtfechaCre.between(
            DateUtils.createDate("2021-01-01 00:00:00"),DateUtils.createDate("2021-02-09 00:00:00")));
    
    
    return query.list(qtblOT);
}

Image of when debugging the lists are null or empty

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...