# SpringBootBlog1.0 **Repository Path**: dadongsss/SpringBootBlog ## Basic Information - **Project Name**: SpringBootBlog1.0 - **Description**: SpringBoot+semantic-ui快速搭建个人博客系统 - **Primary Language**: Java - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2019-10-13 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 设计规划与环境 ###### 技术组合 - 后端:SpringBoot+JPA+thymeleaf模板 - 数据库:Mysql - 前端UI:SemanticUI框架 ###### 工具与环境 - IDEA - Maven 3 - JDK 8 - Axure RP 8 #### 需求分析 ###### 用户故事 - 用户故事模板 - 作为一个使用者,我可以做某个功能,如此可以有商业价值 - 角色、功能、商业价值 - 举例 - 作为一个招聘网站要注册用户,我想查看最近3天发布的招聘信息,以便于了解最新的招聘信息 - 作为公司,我要张贴新工作 - 个人博客系统的用户故事 - 角色:普通访客,管理员 - 访客:可以分页查看所有博客 - 访客,可以快速查博客数量最多的6个分类 - 访客,可以查看所有的分类 - 访客,可以查看某个分类下的博客列表 - 访客,可以查看标记博客最多的10个标签 - 访客,可以查看所有标签 - 访客,可以查看某个标签下的博客列表 - 访客,可以根据年度时间线查看博客列表 - 访客,可以查看最新推荐博客 - 访客,可以关键字全局搜索博客 - 访客,可以查看单个博客内容 - 访客,可以对博客内容进行评论 - 访客,可以赞赏博客内容 - 访客,可以微信扫描阅读博客内容 - 访客,可以在首页扫描公众号二维码关注我 - 我,可以用户名和密码登录后台管理 - 我,可以管理博客 - 发布新博客 - 对博客进行分类 - 对博客进行打标签 - 修改博客 - 删除博客 - 可以根据标题、分类、标签查询博客 - 我,可以管理博客分类 - 新增一个分类 - 修改一个分类 - 删除一个分类 - 根据分类名称查询分类 - 我,可以管理标签 - 薪增一个标签 - 修改一个标签 - 删除一个标签 - 根据名称查询标签 #### 功能规划 ###### 后台管理 - 管理员登录 - 博客管理 - 发布博客 - 修改博客 - 删除博客 - 查询博客 - 分类管理 - 新增分类 - 修改分类 - 删除分类 - 查询分类 - 标签管理 - 新增标签 - 修改标签 - 删除标签 - 查询标签 ###### 前端展示 - 首页 - 博客分页列表 - 展示Top标签 - 展示Top分类 - 最新博客推荐 - 博客详情 - 分类 - 展示所有分类 - 展示单个分类下博客列表 - 博客详情 - 标签 - 展示所有标签 - 展示单个标签对应博客列表 - 博客详情 - 归档 - 按年度时间线展示博客列表 - 博客详情 ###### 设计:使用Axure 8设计原型 ###### 使用semantic-ui来实现前端页面 - 头部分、中间部分、尾部部分的页面划分,使用框架内css属性和自定义属性实现 - 在semantic中使用图标文档查不到,就去查,框架引用这里 ###### 前端页面 - 静态页面导入 - 使用semantic-ui - 也可以使用BootStrap或vue实现前端 - 模板布局 - 定义fragment - 使用fragment布局 ###### 项目需要集成的插件 - 编辑器:MarkdownEditor - github下载代码,拷贝需要的资源文件到目录,引入,查看示例 - 内容排版:typo.css:GitHub - 动画:animate.css:github - 代码高亮:prism - 滚动侦测:waypoints - 平滑滚动:jquery.scrollTo - 目录生成:Tocbot - 二维码生成:qrcode.js ###### 后端使用SpringBoot创建(依赖模块) - web - Thymeleaf - JPA - Mysql - DevTools - Aspects - 路径过滤使用内置Interceptor ###### 其它配置 - yum配置 - log日志自定义配置 - 异常处理 ###### 记录日志内容 - 请求url - 访问者ip - 调用方法classMethod - 参数args - 返回内容 ###### 数据对象与表 - blog - 实体属性:分类、标签、评论、用户 - 基本属性:标题、内容、首图、标记、浏览次数、赞赏开启、版权开启、评论开启、发布、创建时间、更新时间 - type:名称 - tag:名称 - comment:昵称、邮箱、头像、评论内容、创建时间 - user:昵称、用户名、命名、邮箱、类型、头像、创建时间、更新时间