springboot新闻首页+搜索+详情页

一、新闻首页

在NewRepository中添加接口(按照是否推荐进行查询):

    @Query("select n from News n where n.recommend = true")
    List<News> findTop(Pageable p);

1.在NewService中添加接口,并在Impl中实现
1.1接口:

    //主页显示新闻列表
    Page<News> listNew(Pageable pageable);
    //主页推荐最新新闻列表
    List<News> listRecommendNewTop(Integer size);

1.2实现:

    @Override
    public Page<News> listNew(Pageable pageable) {
   
        return newRepository.findAll(pageable);
    }
    
    @Override
    public List<News> listRecommendNewTop(Integer size) {
   
        Sort sort = Sort.by(Sort.Direction.DESC,"updateTime");
        Pageable pageable = PageRequest.of(0,size,sort);
        return newRepository.findTop(pageable);
    }

2.在TypeRepository类中添加接口(查询类型最多的新闻种类),在TagRepository类中添加接口(查询标签数目最多的新闻)
TypeRepository:

    @Query("select t from Type t")
    List<Type> findTop(Pageable pageable);

TagRepository:

    @Query("select t from Tag t")
    List<Tag> findTop(Pageable p);

3.在Service和Impl中写入与上面数据库查询相对应的逻辑实现
TypeService接口

 List<Type> listTypeTop(Integer size);

TypeServiceImpl实现

    @Override
    public List<Type> listTypeTop(Integer size) {
   
        Sort sort = Sort.by(Sort.Direction.DESC,"news.size");
        Pageable pageable = PageRequest.of(0,size,sort);
        return typeRepository
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值