我正在尝试从自定义查询对象动态构建查询。

在代码的某一点,可以将orderBy添加到DetachedCriteria。接下来,如果DetachedCriteria中不存在orderBy,我想添加一个orderBy。浏览文档,我似乎找不到任何访问此信息的方法。

有什么办法可以做到这一点?

(当然,如果不可能,我将围绕此重构代码)

最佳答案

你可以试试这个吗?

    DetachedCriteria detached; //intialized DetachedCriteria
    Session s; //intialized hibernate session

    //get the criteriaImpl executing the query
    CriteriaImpl executableCriteria = (CriteriaImpl) detached.getExecutableCriteria(s);

    //return new iterator of the OrderEntries
    Iterator<CriteriaImpl.OrderEntry> orderEntryIterator = executableCriteria.iterateOrderings();

    //check if it has an order entry
    if (orderEntryIterator.hasNext()) {

    }


希望它会有所帮助。

08-04 12:16