考虑这个例子,我有一个bean(产品),它有一个小部件列表。
@OrderBy("name ASC")
private Set<Widgets> widgets;
我创建了一个标准来列出产品(我简化了,在我的情况下,我需要一个标准来应用限制)
session.createCriteria()
此条件将获得默认排序( name ASC
)我不想要。
我无法删除此默认排序,因为这将对所有应用程序产生巨大影响。我想找到一个“黑客”的方式来删除这个特定情况下的默认命令。
我试过上面的建议
Iterator<Order> orderIter = ((CriteriaImpl)criteria).iterateOrderings();
while (orderIter.hasNext()) {
orderIter.next();
orderIter.remove();
}
但它不起作用,因为它太早了:默认排序是在 criteria.list()
被称为。
暂无答案!
目前还没有任何答案,快来回答吧!