这里表示我们查询Type里面的三条记录
- TypeServiceImpl.java
@Override
public List<Type> listTypeTop(int size) {
Sort sort = Sort.by(Sort.Direction.DESC,"news.size");
Pageable pageable = PageRequest.of(0,size,sort);
return typeRepository.findTop(pageable);
}
sort表示排序方式,这里的意思是根据type里面的news列表的长度进行倒序排序,也就是list长的在前面。然后声明一个pageable的对象,其中0表示对一页,size表示这一页的数据量,sort为排序方式。然后将pageable传入findTop.
- TypeRepository.java
package com.zhongruan.repository;
import com.zhongruan.entity.Type;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import java.util.List;
public interface TypeRepository extends JpaRepository<Type,Long> {
Type findByName(String name);
Type findById(long id);
@Query("select t from Type t")
List<Type> findTop(Pageable pageable);
}
由于这是自己声明的方法,需要写好查询语句,@Query(“select t from Type t”)表示是从Type里面查询的记录。