您的当前位置:首页正文

Spring DATA JPA 中findAll 进行OrderBy方式

2024-11-15 来源:个人技术集锦

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全靠猜-_-

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

显示全文