【发布时间】:2013-04-03 02:02:03
【问题描述】:
如何使用 Spring-data Pageable 进行不区分大小写的排序?
我的存储库中有这个方法
public interface ItemRepository extends QueryDslPredicateExecutor<Item>{
@Query("SELECT o FROM Item o WHERE o.status = ?1")
Page<Item> findByStatus(Item.Status status, Pageable pageable);
}
我希望能够调用它:
itemRepository.findByStatus(Status.completed, new PageRequest(0, 10, Direction.ASC, "lower(name)")
注意属性字符串中的lower 函数。这不起作用,因为 Spring-data 期望那里有一个属性。这将被翻译成类似:
SELECT o FROM Item o WHERE o.status = ?1 ORDER BY o.lower(name)
这当然是行不通的,因为对象上没有 'lower' 属性。
有没有办法让它工作?
【问题讨论】:
标签: spring-data-jpa