我正在使用通过 Spring Framework 中的 @Query 注释定义的方法进行查询。
@Transactional(readOnly=true)
@Query("SELECT x FROM X x ORDER BY x.id ASC")
List<X> findLowest();
我目前正在返回一个项目列表,但我真的只想返回第一个。我怎样才能做到这一点?
我正在使用通过 Spring Framework 中的 @Query 注释定义的方法进行查询。
@Transactional(readOnly=true)
@Query("SELECT x FROM X x ORDER BY x.id ASC")
List<X> findLowest();
我目前正在返回一个项目列表,但我真的只想返回第一个。我怎样才能做到这一点?
首先,您应该像这样将 Pageable 对象添加到您的方法中:
@Transactional(readOnly=true)
@Query("SELECT x FROM X x ORDER BY x.id ASC")
List<X> findLowest(Pageable pageable);
并以这种方式使用:
Pageable firstResult = new PageRequest(0, 1);
List<X> result = repository.findLowest(firstResult);
这样,您可以再次使用此方法。