莆田网站建设哪家好,网站建设布为网,做付费网站,网站空间多久续一次费导航
其实之前已经实现过文章和标签分类了 但是这个对应的是导航栏的#xff0c;多显示个图片 所以新增两个这个请求
文章分类 把之前的CategoryVo加个描述属性 写过这个copyList,直接用就行
标签分类
和上面的分类查询差不多 不多解释了
分类文章列表
点击这个后…导航
其实之前已经实现过文章和标签分类了 但是这个对应的是导航栏的多显示个图片 所以新增两个这个请求
文章分类 把之前的CategoryVo加个描述属性 写过这个copyList,直接用就行
标签分类
和上面的分类查询差不多 不多解释了
分类文章列表
点击这个后 查询分类
这个功能简单点击对应图标上面显示对应的东西需要根据id查询分类数据
根据分类查询文章列表
因为前端是用的listArticle那个映射来进行数据传输的 所以我们要改一下文章列表的逻辑 在PageParam新增CategoryId和TagId下一个功能标签 标签文章列表
通过点击这个标签可以显示对应所有文章 查询标签信息 更改listArticle的逻辑
因为我们的tag和article多对多 所以需要先根据tag找到对应的文章id放到一个集合中 然后将这个看我们的ArticleId是否在集合中只查询集合中的 if (articleIdList.size() 0){ articleLambdaQueryWrapper.in(Article::getId,articleIdList); } ok
文章归档
就是通过点击左边的就能找到我们对于年月发布的文章 还是文章列表接口里面加逻辑
接口 该一下请求分页参数 注释掉之前的listArticle不用mp了直接用myabtis原生操作
Overridepublic Result listArticle(PageParams pageParams) {PageArticle page new Page(pageParams.getPage(),pageParams.getPageSize());IPageArticle articleIPage this.articleMapper.listArticle(page,pageParams.getCategoryId(),pageParams.getTagId(),pageParams.getYear(),pageParams.getMonth());return Result.success(copyList(articleIPage.getRecords(),true,true,false,false));}写一下对应的articleMapper.xml 写一下对应映射不写的话也可以开启驼峰命名即可
?xml version1.0 encodingUTF-8 ?
!--MyBatis配置文件--
!DOCTYPE mapper PUBLIC -//mybatis.org//DTD Config 3.0//EN http://mybatis.org/dtd/mybatis-3-mapper.dtdmapper namespacecom.mszlu.blog.dao.mapper.ArticleMapperresultMap idarticleMap typecom.mszlu.blog.dao.pojo.Articleid columnid propertyid /result columnauthor_id propertyauthorId/result columncomment_counts propertycommentCounts/result columncreate_date propertycreateDate/result columnsummary propertysummary/result columntitle propertytitle/result columnview_counts propertyviewCounts/result columnweight propertyweight/result columnbody_id propertybodyId/result columncategory_id propertycategoryId//resultMapselect idlistArticle resultMaparticleMapselect * from ms_articlewhere1 1if testcategoryId ! nulland category_id ##{categoryId}/ifif testyear ! null and year.length0 and month ! null and month.length0and ( FROM_UNIXTIME(create_date/1000,%Y) ##{year} and FROM_UNIXTIME(create_date/1000,%m) ##{month} )/ifif testtagId ! nulland id in (select article_id from ms_article_tag where tag_id##{tagId})/if/whereorder by create_date desc/select
/mapper效果展示