From b505f890d4d22a6cd965e2b5f6fbea26141c5fe7 Mon Sep 17 00:00:00 2001 From: limqhz Date: Sun, 8 May 2022 03:00:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=B9=E5=8D=9A=E5=AE=A2=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E4=BA=86=E4=BC=98=E5=8C=96=E7=BD=AE=E9=A1=B6=EF=BC=8C=E6=94=B6?= =?UTF-8?q?=E8=97=8F=EF=BC=8C=E7=83=AD=E5=BA=A6=E7=AD=89=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 56 ----------- .../java/com/quinn/common/QuinnConstant.java | 7 ++ .../com/quinn/controller/AboutController.java | 2 +- .../quinn/controller/BaseModelController.java | 17 ++++ .../controller/BlogCategoryController.java | 5 +- .../com/quinn/controller/BlogController.java | 64 +++++++++++-- .../quinn/controller/SearchController.java | 59 ++++++++++++ .../com/quinn/generator/CodeGenerator.java | 8 +- .../java/com/quinn/mapper/BlogMapper.java | 3 + .../java/com/quinn/mapper/BlogStarMapper.java | 16 ++++ .../java/com/quinn/mapper/xml/BlogMapper.xml | 5 + src/main/java/com/quinn/pojo/Blog.java | 3 + src/main/java/com/quinn/pojo/BlogStar.java | 45 +++++++++ .../java/com/quinn/service/BlogService.java | 4 + .../com/quinn/service/BlogStarService.java | 16 ++++ .../quinn/service/impl/BlogServiceImpl.java | 19 ++++ .../service/impl/BlogStarServiceImpl.java | 20 ++++ src/main/java/com/quinn/vo/BlogStarReq.java | 19 ++++ src/main/java/com/quinn/vo/StarValue.java | 16 ++++ .../resources/static/images/menu/wechat.jpeg | Bin 0 -> 79995 bytes .../resources/static/live/js/addlive2d.js | 8 +- src/main/resources/templates/blog/list.html | 90 ++++++++++-------- src/main/resources/templates/blog/read.html | 37 ++++++- .../resources/templates/common/header.html | 18 ++++ src/main/resources/templates/index.html | 75 +++++++++++---- src/main/resources/templates/page/about.html | 54 ++++------- src/main/resources/templates/page/append.html | 47 +++++++++ .../resources/templates/source/hotspot.html | 7 +- src/main/resources/templates/user/index.html | 4 +- 29 files changed, 551 insertions(+), 173 deletions(-) create mode 100644 src/main/java/com/quinn/controller/BaseModelController.java create mode 100644 src/main/java/com/quinn/controller/SearchController.java create mode 100644 src/main/java/com/quinn/mapper/BlogStarMapper.java create mode 100644 src/main/java/com/quinn/pojo/BlogStar.java create mode 100644 src/main/java/com/quinn/service/BlogStarService.java create mode 100644 src/main/java/com/quinn/service/impl/BlogStarServiceImpl.java create mode 100644 src/main/java/com/quinn/vo/BlogStarReq.java create mode 100644 src/main/java/com/quinn/vo/StarValue.java create mode 100644 src/main/resources/static/images/menu/wechat.jpeg create mode 100644 src/main/resources/templates/page/append.html diff --git a/README.md b/README.md index f90d9d4..e69de29 100644 --- a/README.md +++ b/README.md @@ -1,56 +0,0 @@ -# 狂神的小社区开源版 - -![image-20200731093732474](upload/image-20200731093732474.png) - -### 介绍 - -> 社区开源版本,精简了代码,改变为单体项目,方便大家一键启动! - -> 地址:http://www.quinn.com/ - -项目架子主要依赖: -- SpringBoot 2.3.0 -- MySQL 5.7 -- MyBatisPlus 3.0.5 -- swagger -- fastjson -- thymeleaf -- editormd -- layer -- bootstrap -- springsecurity -- 代码自动生成 - -### 安装教程 - -1. 执行SQL,创建数据库 -2. 项目导入IDEA 启动 -3. 访问测试! -4. 自行根据代码逻辑填充测试数据,查看即可! - -### 目录说明 -```shell script -src/main/java/com/quinn -- config 配置类 -- controller controller -- generator 代码生成器 -- mapper mapper -- pojo pojo -- result 统一返回结果 -- service service -- utils 工具类 -- vo vo对象 -QuinnApplication 启动类 - -src/resources -- static 静态资源 -- templates 页面模板 -- application-dev.properties 配置文件 - -quinn.sql 数据库文件 -``` - -### 如何加入狂神的小社区 - -http://mp.weixin.qq.com/mp/homepage?__biz=Mzg2NTAzMTExNg==&hid=5&sn=5732bda552bcb476e55f678983edfb51&scene=18#wechat_redirect - diff --git a/src/main/java/com/quinn/common/QuinnConstant.java b/src/main/java/com/quinn/common/QuinnConstant.java index 8919a83..0d0ae89 100644 --- a/src/main/java/com/quinn/common/QuinnConstant.java +++ b/src/main/java/com/quinn/common/QuinnConstant.java @@ -20,4 +20,11 @@ public interface QuinnConstant { */ String SOURCE_PASSWORD = "926462"; + String APPEND_PASSWORD = "wangna&limengqi"; + + String NEW_SOURCE_PASSWORD = "limengqi&wangna"; + + String EDIT_SOURCE_FIRST = "lw@"; + String EDIT_SOURCE_LAST = "#"; + } diff --git a/src/main/java/com/quinn/controller/AboutController.java b/src/main/java/com/quinn/controller/AboutController.java index 3aa0f5a..5d1a1a4 100644 --- a/src/main/java/com/quinn/controller/AboutController.java +++ b/src/main/java/com/quinn/controller/AboutController.java @@ -30,7 +30,7 @@ public class AboutController { @GetMapping("/about") public String userIndexBlog(Model model){ - Page pageParam = new Page<>(1, 50); + Page pageParam = new Page<>(1, 20); aboutService.page(pageParam,new QueryWrapper().orderByDesc("gmt_create")); // 结果 List sayList = pageParam.getRecords(); diff --git a/src/main/java/com/quinn/controller/BaseModelController.java b/src/main/java/com/quinn/controller/BaseModelController.java new file mode 100644 index 0000000..6f51299 --- /dev/null +++ b/src/main/java/com/quinn/controller/BaseModelController.java @@ -0,0 +1,17 @@ +package com.quinn.controller; + +import com.quinn.pojo.User; + +import javax.servlet.http.HttpServletRequest; + +public class BaseModelController { + + protected String getLoginUserId(HttpServletRequest request){ + User user = (User) request.getSession().getAttribute("loginUser"); + if (user != null){ + return user.getUid(); + } + return ""; + } + +} diff --git a/src/main/java/com/quinn/controller/BlogCategoryController.java b/src/main/java/com/quinn/controller/BlogCategoryController.java index 64fc41d..13dac4e 100644 --- a/src/main/java/com/quinn/controller/BlogCategoryController.java +++ b/src/main/java/com/quinn/controller/BlogCategoryController.java @@ -23,7 +23,7 @@ import java.util.List; * @author limqsh * @since 2020-06-29 */ -@Controller +//@Controller public class BlogCategoryController { @Autowired @@ -31,7 +31,8 @@ public class BlogCategoryController { @Autowired BlogService blogService; - @GetMapping("/blog/category/{bid}/{page}/{limit}") + @Deprecated +// @GetMapping("/blog/category/{bid}/{page}/{limit}") public String blogPage( @PathVariable int bid, @PathVariable int page, diff --git a/src/main/java/com/quinn/controller/BlogController.java b/src/main/java/com/quinn/controller/BlogController.java index 03111af..3babd43 100644 --- a/src/main/java/com/quinn/controller/BlogController.java +++ b/src/main/java/com/quinn/controller/BlogController.java @@ -5,17 +5,26 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.quinn.pojo.Blog; import com.quinn.pojo.BlogCategory; +import com.quinn.pojo.BlogStar; import com.quinn.pojo.Comment; import com.quinn.service.BlogCategoryService; import com.quinn.service.BlogService; +import com.quinn.service.BlogStarService; import com.quinn.service.CommentService; import com.quinn.utils.QuinnUtils; +import com.quinn.vo.BlogStarReq; import com.quinn.vo.QuestionWriteForm; +import com.quinn.vo.StarValue; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import java.util.ArrayList; import java.util.List; /** @@ -27,7 +36,7 @@ import java.util.List; * @since 2020-06-29 */ @Controller -public class BlogController { +public class BlogController extends BaseModelController{ @Autowired BlogCategoryService blogCategoryService; @@ -35,18 +44,23 @@ public class BlogController { BlogService blogService; @Autowired CommentService commentService; + @Resource + BlogStarService blogStarService; // 列表展示 @GetMapping("/blog") public String blogList(Model model){ Page pageParam = new Page<>(1, 10); - blogService.page(pageParam,new QueryWrapper().orderByDesc("gmt_create")); + blogService.page(pageParam,new QueryWrapper().orderByDesc("sort").orderByDesc("gmt_create")); // 结果 List blogList = pageParam.getRecords(); model.addAttribute("blogList",blogList); model.addAttribute("pageParam",pageParam); + List topBlogList = blogService.getTopBlog(); + model.addAttribute("topBlogList",topBlogList); + // 分类信息 List categoryList = blogCategoryService.list(null); model.addAttribute("categoryList",categoryList); @@ -64,13 +78,16 @@ public class BlogController { page = 1; } Page pageParam = new Page<>(page, limit); - blogService.page(pageParam,new QueryWrapper().orderByDesc("gmt_create")); + blogService.page(pageParam,new QueryWrapper().orderByDesc("sort").orderByDesc("gmt_create")); // 结果 List blogList = pageParam.getRecords(); model.addAttribute("blogList",blogList); model.addAttribute("pageParam",pageParam); + List topBlogList = blogService.getTopBlog(); + model.addAttribute("topBlogList",topBlogList); + // 分类信息 List categoryList = blogCategoryService.list(null); model.addAttribute("categoryList",categoryList); @@ -115,16 +132,52 @@ public class BlogController { // 阅读文章 @GetMapping("/blog/read/{bid}") - public String read(@PathVariable("bid") String bid,Model model){ + public String read(HttpServletRequest request, @PathVariable("bid") String bid, Model model){ Blog blog = blogService.getOne(new QueryWrapper().eq("bid", bid)); blog.setViews(blog.getViews()+1); blogService.updateById(blog); model.addAttribute("blog",blog); + + StarValue starValue = new StarValue(); + starValue.setStar(false); + String loginUserId = getLoginUserId(request); + if (!StringUtils.isEmpty(loginUserId)){ + List stars = blogStarService.list(new QueryWrapper().eq("user_id", loginUserId)); + if (!CollectionUtils.isEmpty(stars)){ + starValue.setStar(true); + } + } + model.addAttribute("starValue",starValue); + List commentList = commentService.list(new QueryWrapper().eq("topic_id", bid).orderByDesc("gmt_create")); model.addAttribute("commentList",commentList); return "blog/read"; } + // 收藏 + @PostMapping("/blog/star") + public synchronized String toStar(BlogStarReq blogStarReq, Model model){ + StarValue starValue = new StarValue(); + starValue.setStar(false); + List list = blogStarService.list(new QueryWrapper() + .eq("user_id", blogStarReq.getUserId()).eq("topic_id", blogStarReq.getTopicId())); + if (!CollectionUtils.isEmpty(list)){ + list.forEach(x->{ + blogStarService.removeById(x); + }); + starValue.setStar(false); + } else { + BlogStar blogStar = new BlogStar(); + blogStar.setTopicId(blogStarReq.getTopicId()); + blogStar.setUserId(blogStarReq.getUserId()); + blogStar.setGmtCreate(QuinnUtils.getTime()); + blogStarService.save(blogStar); + starValue.setStar(true); + } + model.addAttribute("starValue",starValue); + return "blog/read::star_refresh"; + } + // 编辑问题 @GetMapping("/blog/editor/{uid}/{bid}") public synchronized String toEditor(@PathVariable("uid") String uid, @@ -188,8 +241,5 @@ public class BlogController { return "redirect:/blog/read/"+bid; } - - - } diff --git a/src/main/java/com/quinn/controller/SearchController.java b/src/main/java/com/quinn/controller/SearchController.java new file mode 100644 index 0000000..c02b140 --- /dev/null +++ b/src/main/java/com/quinn/controller/SearchController.java @@ -0,0 +1,59 @@ +package com.quinn.controller; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.quinn.common.QuinnConstant; +import com.quinn.pojo.About; +import com.quinn.pojo.Source; +import com.quinn.service.SourceService; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.PostMapping; + +import javax.annotation.Resource; +import java.util.List; + +/** + *

+ * 前端控制器 + *

+ * + * @author limqsh + * @since 2022-05-01 + */ +@Controller +public class SearchController { + + @Resource + SourceService sourceService; + + @PostMapping("/search") + public String searchAll(String findWhat,Model model){ + if (StringUtils.isEmpty(findWhat)){ + return "index"; + } + if (QuinnConstant.NEW_SOURCE_PASSWORD.equals(findWhat)){ + return "source/uploadSource"; + } + if (QuinnConstant.APPEND_PASSWORD.equals(findWhat)){ + return "page/append"; + } + if (findWhat.startsWith(QuinnConstant.EDIT_SOURCE_FIRST)){ + findWhat = findWhat.substring(findWhat.indexOf(QuinnConstant.EDIT_SOURCE_FIRST) + QuinnConstant.EDIT_SOURCE_FIRST.length()); + if (!StringUtils.isEmpty(findWhat) && findWhat.endsWith(QuinnConstant.EDIT_SOURCE_LAST)){ + findWhat = findWhat.substring(0,findWhat.lastIndexOf(QuinnConstant.EDIT_SOURCE_LAST)); + } + if (!StringUtils.isEmpty(findWhat)){ + Source sid = sourceService.getOne(new QueryWrapper().eq("sid", findWhat)); + if (sid!=null){ + return "redirect:/tracy/mcgrady/lmq/love/wn/" + findWhat; + } + } + } + return "index"; + } + +} + diff --git a/src/main/java/com/quinn/generator/CodeGenerator.java b/src/main/java/com/quinn/generator/CodeGenerator.java index 2ef7587..3e68b88 100644 --- a/src/main/java/com/quinn/generator/CodeGenerator.java +++ b/src/main/java/com/quinn/generator/CodeGenerator.java @@ -43,15 +43,15 @@ public class CodeGenerator { PackageConfig pc = new PackageConfig(); pc.setModuleName("quinn"); pc.setParent("com"); -// pc.setController("controller"); + pc.setController("controller"); pc.setEntity("pojo"); -// pc.setService("service"); -// pc.setMapper("mapper"); + pc.setService("service"); + pc.setMapper("mapper"); mpg.setPackageInfo(pc); // 5、策略配置 StrategyConfig strategy = new StrategyConfig(); - strategy.setInclude("qn_source");//设置要映射的表名 + strategy.setInclude("qn_blog_star");//设置要映射的表名 strategy.setNaming(NamingStrategy.underline_to_camel);//数据库表映射到实体的命名策略 strategy.setTablePrefix("qn_");//设置表前缀不生成 diff --git a/src/main/java/com/quinn/mapper/BlogMapper.java b/src/main/java/com/quinn/mapper/BlogMapper.java index ad7421c..144639e 100644 --- a/src/main/java/com/quinn/mapper/BlogMapper.java +++ b/src/main/java/com/quinn/mapper/BlogMapper.java @@ -3,6 +3,8 @@ package com.quinn.mapper; import com.quinn.pojo.Blog; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import java.util.List; + /** *

* Mapper 接口 @@ -13,4 +15,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface BlogMapper extends BaseMapper { + List getTopBlog(); } diff --git a/src/main/java/com/quinn/mapper/BlogStarMapper.java b/src/main/java/com/quinn/mapper/BlogStarMapper.java new file mode 100644 index 0000000..7611138 --- /dev/null +++ b/src/main/java/com/quinn/mapper/BlogStarMapper.java @@ -0,0 +1,16 @@ +package com.quinn.mapper; + +import com.quinn.pojo.BlogStar; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author limqsh + * @since 2022-05-08 + */ +public interface BlogStarMapper extends BaseMapper { + +} diff --git a/src/main/java/com/quinn/mapper/xml/BlogMapper.xml b/src/main/java/com/quinn/mapper/xml/BlogMapper.xml index 4376d72..b303d5f 100644 --- a/src/main/java/com/quinn/mapper/xml/BlogMapper.xml +++ b/src/main/java/com/quinn/mapper/xml/BlogMapper.xml @@ -2,4 +2,9 @@ + + diff --git a/src/main/java/com/quinn/pojo/Blog.java b/src/main/java/com/quinn/pojo/Blog.java index d135452..9d6a582 100644 --- a/src/main/java/com/quinn/pojo/Blog.java +++ b/src/main/java/com/quinn/pojo/Blog.java @@ -44,6 +44,9 @@ public class Blog implements Serializable { @ApiModelProperty(value = "排序 0 普通 1 置顶") private Integer sort; + @ApiModelProperty(value = "收藏") + private Integer star; + @ApiModelProperty(value = "浏览量") private Integer views; diff --git a/src/main/java/com/quinn/pojo/BlogStar.java b/src/main/java/com/quinn/pojo/BlogStar.java new file mode 100644 index 0000000..483fe13 --- /dev/null +++ b/src/main/java/com/quinn/pojo/BlogStar.java @@ -0,0 +1,45 @@ +package com.quinn.pojo; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import java.util.Date; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author limqsh + * @since 2022-05-08 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("qn_blog_star") +@ApiModel(value="BlogStar对象", description="") +public class BlogStar implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "自增id") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "收藏主题id") + private String topicId; + + @ApiModelProperty(value = "收藏者id") + private String userId; + + @ApiModelProperty(value = "收藏创建时间") + private Date gmtCreate; + + +} diff --git a/src/main/java/com/quinn/service/BlogService.java b/src/main/java/com/quinn/service/BlogService.java index 25cd686..63e45d0 100644 --- a/src/main/java/com/quinn/service/BlogService.java +++ b/src/main/java/com/quinn/service/BlogService.java @@ -3,6 +3,8 @@ package com.quinn.service; import com.quinn.pojo.Blog; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 服务类 @@ -13,4 +15,6 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface BlogService extends IService { + List getTopBlog(); + } diff --git a/src/main/java/com/quinn/service/BlogStarService.java b/src/main/java/com/quinn/service/BlogStarService.java new file mode 100644 index 0000000..f466620 --- /dev/null +++ b/src/main/java/com/quinn/service/BlogStarService.java @@ -0,0 +1,16 @@ +package com.quinn.service; + +import com.quinn.pojo.BlogStar; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author limqsh + * @since 2022-05-08 + */ +public interface BlogStarService extends IService { + +} diff --git a/src/main/java/com/quinn/service/impl/BlogServiceImpl.java b/src/main/java/com/quinn/service/impl/BlogServiceImpl.java index f5c65ab..a3de530 100644 --- a/src/main/java/com/quinn/service/impl/BlogServiceImpl.java +++ b/src/main/java/com/quinn/service/impl/BlogServiceImpl.java @@ -5,6 +5,11 @@ import com.quinn.mapper.BlogMapper; import com.quinn.service.BlogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; /** *

@@ -17,4 +22,18 @@ import org.springframework.stereotype.Service; @Service public class BlogServiceImpl extends ServiceImpl implements BlogService { + @Resource + BlogMapper blogMapper; + + @Override + public List getTopBlog(){ + List topBlog = blogMapper.getTopBlog(); + if (!CollectionUtils.isEmpty(topBlog)){ + topBlog.forEach(x->{ + x.setContent(""); + }); + } + return topBlog; + } + } diff --git a/src/main/java/com/quinn/service/impl/BlogStarServiceImpl.java b/src/main/java/com/quinn/service/impl/BlogStarServiceImpl.java new file mode 100644 index 0000000..8646818 --- /dev/null +++ b/src/main/java/com/quinn/service/impl/BlogStarServiceImpl.java @@ -0,0 +1,20 @@ +package com.quinn.service.impl; + +import com.quinn.pojo.BlogStar; +import com.quinn.mapper.BlogStarMapper; +import com.quinn.service.BlogStarService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author limqsh + * @since 2022-05-08 + */ +@Service +public class BlogStarServiceImpl extends ServiceImpl implements BlogStarService { + +} diff --git a/src/main/java/com/quinn/vo/BlogStarReq.java b/src/main/java/com/quinn/vo/BlogStarReq.java new file mode 100644 index 0000000..bace6a8 --- /dev/null +++ b/src/main/java/com/quinn/vo/BlogStarReq.java @@ -0,0 +1,19 @@ +package com.quinn.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class BlogStarReq { + + @ApiModelProperty(value = "主题号") + private String topicId; + + @ApiModelProperty(value = "用户编号") + private String userId; + +} diff --git a/src/main/java/com/quinn/vo/StarValue.java b/src/main/java/com/quinn/vo/StarValue.java new file mode 100644 index 0000000..23f6cc1 --- /dev/null +++ b/src/main/java/com/quinn/vo/StarValue.java @@ -0,0 +1,16 @@ +package com.quinn.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class StarValue { + + @ApiModelProperty(value = "是否收藏") + private boolean star; + +} diff --git a/src/main/resources/static/images/menu/wechat.jpeg b/src/main/resources/static/images/menu/wechat.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..5f405ab278cb57779957f2e872fe3acc0a8af91f GIT binary patch literal 79995 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

-
-
- Q&A 累计: + 论坛累计: - - 全部 - / - -
- -
+ +
-

+

- + + 置顶 + [[${blog.getTitle()}]] - - - - - - - [[${blog.getViews()}]] - - - - -

+

+
+ + + + + + + [[${blog.getViews()}]] + + + + + + + [[${blog.getStar()}]] + +
+
-
-

社区公约:
禁止瞎水论坛,内容尽量有实际意义,禁止任何形式的广告,违者暂停账号使用! 申请分类可以在Q群@小狂神

+

+ + + + + 敲黑板 + + + + +
如果发的帖子水分过大,可能会被封禁账号,请酌情发帖评论!

- -
- - diff --git a/src/main/resources/templates/blog/read.html b/src/main/resources/templates/blog/read.html index cf2084b..782c9c6 100644 --- a/src/main/resources/templates/blog/read.html +++ b/src/main/resources/templates/blog/read.html @@ -39,7 +39,7 @@ @@ -50,7 +50,7 @@ 删除 @@ -58,6 +58,18 @@ 编辑 + + + + + + + + + 收藏 + +

@@ -76,10 +88,10 @@
- + - +
@@ -130,7 +142,24 @@ + + + + + + + + diff --git a/src/main/resources/templates/source/hotspot.html b/src/main/resources/templates/source/hotspot.html index b1efae4..7a42b44 100644 --- a/src/main/resources/templates/source/hotspot.html +++ b/src/main/resources/templates/source/hotspot.html @@ -15,14 +15,17 @@
-

+

+ [[${source.getSourceName()}]] + Quinn +

diff --git a/src/main/resources/templates/user/index.html b/src/main/resources/templates/user/index.html index 34afee0..520d104 100644 --- a/src/main/resources/templates/user/index.html +++ b/src/main/resources/templates/user/index.html @@ -17,10 +17,8 @@
-
- +