说明:
(1)本篇博客内容:前台首页展示最新热闻;
目录
1.在【api】接口工程的ArticlePortalControllerApi接口中,定义【查询最新热闻,接口】;
2.在【article】文章服务中的ArticlePortalController类中,去实现【查询最新热闻,接口】;
1.在【article】文章服务的ArticlePortalService接口中,定义一个查询最新热闻的方法;
2.在【article】文章服务的ArticlePortalServiceImpl类中,去实现查询最新热闻的方法;
- /**
- * 前台门户端,查询最新热闻,接口;
- * @return
- */
- @ApiOperation(value = "前台门户端,查询最新热闻", notes = "前台门户端,查询最新热闻", httpMethod = "GET")
- @GetMapping("/hotList") //设置路由,这个是需要前后端约定好的;
- public GraceJSONResult hotList();
/** * 前台门户端,查询最新热闻,接口; * @return */ @Override public GraceJSONResult hotList() { Listlist = articlePortalService.queryHotList(); return GraceJSONResult.ok(list); }说明:
(1)Service部分的内容,在三部分中,有介绍;
/** * 前台门户端,查询最新热闻; * * @return */ public ListqueryHotList();
/** * 前台门户端,查询最新热闻; * * @return */ @Override public ListqueryHotList() { Example example = new Example(Article.class); Example.Criteria criteria = setDefaultArticleExample(example); // 通过设置分页,来达到只展示五条数据的目的; PageHelper.startPage(1,5); // 去查询 Listlist = 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)然后,启动后端项目;