2016-03-21 100 views
0

我正在使用hibernate標準從數據庫中獲取數據。現在我需要獲取基於titlecreatedDate數據,我添加休眠條件訂單不起作用

if(condition){ 
criteria.addOrder(Order.asc("title")); 
}else{ 
criteria.addOrder(Order.asc("createdDate")); 
} 

的問題是,它createdDate工作,但不是title

蔭得到的結果爲TEST,d1,ga,new,pre,ss,t這應該是像d1,ga,new,pre,t,TEST

UPDATE:這個問題是與案件,當我改變測試測試它來適當的。

+0

我認爲你不能達到使用訂單。關於排序字符串大寫字母由於具有較低的字符值而在小寫字母之前排序。也許你必須創建自己的比較器。 – RubioRic

+1

投票的人至少表現出禮貌來解釋問題.. –

回答

1

嘗試使用criteria.addOrder(Order.asc(「title」)。ignoreCase());

+0

是的,我發現問題是與案件。但這不適合我。該怎麼辦? –

+0

這很奇怪。你能用你的hibernate實體更新你的問題嗎? –