我们有一个HQL SELECT查询,因此返回Java对象。令我们惊讶的是,结果列表中缺少一些对象。
我已经检查了db中缺少的一个对象,但是找不到问题。此外,我在'ParsableObject'的构造函数中设置了一个断点,它监视缺少对象的值并且它是触发器。但是,该对象不在结果列表中。
结果包含一些其他对象,并且不会抛出异常。是否有任何我应该注意的已知问题?
我还没做的事:检查休眠日志。我已将hibernate.show_sql
设置为true但未获取日志。但这是一个不同的问题。
准备好的查询:
<query name="ObjectDAOHibernate.getSessionObjects">
<query-param name="idSession" type="long"/>
<![CDATA[
select new de.smartshift.ucchecker.model.ParsableObject(
to.idObject, to.objectName, to.description,
tom.codeSize, tom.codeSizeModified,
tom.lineCount, tom.normalizedLineCount, tom.commentLineCount, tom.lineCountModified,
tot.objectTypeCode,
ocst.idObjectState,
odst.idObjectState,
opst.idObjectState,
otst.idObjectState,
oust.idObjectState,
sapr3data.devClass,
to.standard,
to.tblFolder.relevant)
from
de.smartshift.ucchecker.db.hib.TblObject to join to.tblFolder tf
join tf.tblSession ts
join to.tblObjectType tot
join to.tblObjectMetadata tom
join to.tblObjectProcessingState tops
join tops.tblObjectStateByRefidCustomerState ocst
join tops.tblObjectStateByRefidDownloadState odst
join tops.tblObjectStateByRefidParserState opst
join tops.tblObjectStateByRefidToolState otst
join tops.tblObjectStateByRefidUploadState oust
join to.tblSapr3Data sapr3data
where
ts.idSession=:idSession
order by
to.objectName ASC, tot.objectTypeCode ASC
]]>