Spring DATA JPA 中findAll 进行OrderBy
需要在 repository 中 定义这样的方法 :
findAllByOrderByUpdatedAtDesc()
public List findAllByOrderByUpdatedAtDesc();
重要:(中间要多加一个By)
findAllByOrderByUpdatedAtDesc();
The little ‘By' does all the magic.
Spring Data JPA使用orderby的一个小坑
按照网上可以查到的JPA写法,我想找到全部的数据并且按照rank升序排列,代码如下
public interface RsEventRepository extends CrudRepository<RsEventDto, Integer> { List<RsEventDto> findAllByOrderByRankAsc(); }
结果java报错,接着在entity,还有repository里面找问题。
java.lang.IllegalStateException: Failed to load ApplicationContext
No property asc found for type int! Traversed path: RsEventEntity.rank.
最后发现,应该在ALL后面加个by
List<RsEventDto> findAllByOrderByRankAsc();
这样就可以按照我的想法进行查询了。
果然,JPA写CRUD全靠猜-_-
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。