说明:
(1)本篇博客内容:前台首页展示最新热闻;
目录
1.在【api】接口工程的ArticlePortalControllerApi接口中,定义【查询最新热闻,接口】;
2.在【article】文章服务中的ArticlePortalController类中,去实现【查询最新热闻,接口】;
1.在【article】文章服务的ArticlePortalService接口中,定义一个查询最新热闻的方法;
2.在【article】文章服务的ArticlePortalServiceImpl类中,去实现查询最新热闻的方法;
一:本篇博客内容:
二:开发【查询最新热闻,接口】:Controller层;
1.在【api】接口工程的ArticlePortalControllerApi接口中,定义【查询最新热闻,接口】;
/** * 前台门户端,查询最新热闻,接口; * @return */ @ApiOperation(value = "前台门户端,查询最新热闻", notes = "前台门户端,查询最新热闻", httpMethod = "GET") @GetMapping("/hotList") //设置路由,这个是需要前后端约定好的; public GraceJSONResult hotList();
2.在【article】文章服务中的ArticlePortalController类中,去实现【查询最新热闻,接口】;
/** * 前台门户端,查询最新热闻,接口; * @return */ @Override public GraceJSONResult hotList() { List<Article> list = articlePortalService.queryHotList(); return GraceJSONResult.ok(list); }说明:
(1)Service部分的内容,在三部分中,有介绍;
三:开发【查询最新热闻,接口】:Service层;
1.在【article】文章服务的ArticlePortalService接口中,定义一个查询最新热闻的方法;
/** * 前台门户端,查询最新热闻; * * @return */ public List<Article> queryHotList();
2.在【article】文章服务的ArticlePortalServiceImpl类中,去实现查询最新热闻的方法;
/** * 前台门户端,查询最新热闻; * * @return */ @Override public List<Article> queryHotList() { Example example = new Example(Article.class); Example.Criteria criteria = setDefaultArticleExample(example); // 通过设置分页,来达到只展示五条数据的目的; PageHelper.startPage(1,5); // 去查询 List<Article> list = articleMapper.selectByExample(example); return list; } /** * 工具方法:前台显示文章的,一些基本的、默认的条件; * @return */ private Example.Criteria setDefaultArticleExample(Example example) { // 1. 根据参数情况,构建查询条件; // 1.2 设置排序方式;其中的"publishTime",指的是Article类中的publishTime字段;对应于article表的publish_time字段; example.orderBy("publishTime").desc(); // 1.3 给上面的查询实例,增加查询条件; Example.Criteria criteria = example.createCriteria(); /** * 2.1(隐藏条件)在前台首页,查询的文章应该是即时发布的文章,即is_appoint是0的文章;(PS:前面我们做过,如果一 * 个定时发布的文章到时间后,我们会修改其is_appoint为0) */ criteria.andEqualTo("isAppoint", YesOrNo.NO.type); /** * 2.2(隐藏条件)在前台首页,查询的文章不能是逻辑删除的文章;即,is_delete=0的文章; */ criteria.andEqualTo("isDelete", YesOrNo.NO.type); /** * 2.3(隐藏条件)在前台首页,查询的文章需要是状态是审核通过,即article_status=3的文章; */ criteria.andEqualTo("articleStatus", ArticleReviewStatus.SUCCESS.type); return criteria; }说明:
(1)我们把查询能够展示在前台的文章时,那些最基本的条件,抽成了一个方法;
四:效果;
(1)先install一下整个项目;(2)记得使用SwitchHost开启虚拟域名映射;(3)使用Tomcat启动前端项目;(4)然后,启动后端项目;
本文详细介绍了如何在Spring Boot API接口和文章服务中开发查询最新热闻的功能,包括Controller层的接口定义和Service层的方法实现。通过设置分页,确保首页仅展示最新5条新闻,并遵循了相关条件筛选(如非定时发布、未逻辑删除且状态审核通过)。



被折叠的 条评论
为什么被折叠?



