【问题标题】:Hibernate Criteria Order not working休眠标准顺序不起作用
【发布时间】:2016-03-21 11:26:32
【问题描述】:

我正在使用休眠条件从数据库中获取数据。现在我需要根据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

更新:问题出在案例上,当我更改 TEST 以测试其正常运行时。

【问题讨论】:

  • 我认为您无法使用订单来实现这一点。在排序字符串时,由于字符值较低,大写字母排在小写字母之前。也许您必须创建自己的比较器。
  • 投反对票的人至少表现出解释问题的方式..

标签: java hibernate criteria hibernate-criteria


【解决方案1】:

尝试使用 criteria.addOrder(Order.asc("title").ignoreCase());

【讨论】:

  • 是的,我发现问题出在案例上。但这对我不起作用。怎么办?
  • 这很奇怪。你能用你的休眠实体更新你的问题吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-09
相关资源
最近更新 更多