前言
本博客系统1.0版本已于10月底写完,前前后后大概花了1个多月。在学校上课,还是每天挤了3,4个小时写项目。期间遇见了许许多多大大小小的问题,也是边写边学。有不足之处希望可以留言指教,本博客后期会持续维护和更新。下面是博客1.0版本的一些总结 。
一、技术栈
1.1前端
1.2.后端
- 核心框架:SpringBoot 2.3.4
- 项目构建:jdk11、Maven 3
- 持久层框架:JPA
- 模板框架:Thymeleaf
- 加密:MD5加密
- 运行环境:阿里云Centos7
1.3.开发工具
- IDEA
- SQLyog
- Xshell 6
- Xftp 6
- Chrome
1.4.数据库
MySQL 8.0
二、功能需求
因为是个人博客,所以没有做用户权限管理,只是简单的区分了一下普通用户和管理员用户,这里就根据普通用户和管理员用户来讲述功能需求。
2.1.普通用户
- 查看文章信息:文章列表、推荐文章、文章标题、文章内容、发布时间以及评论等信息
- 查看分类文章:分类列表、分类文章信息
- 查看时间归档:按照文章时间发布顺序查看文章
- 留言评论:留言并回复
- 赞赏:可以赞赏文章内容
2.2.管理员用户(我)
- 拥有普通用户所有功能权限
- 登录:在主页路径下加“/admin”,可进入登录页面,根据数据库的用户名和密码进行登录
- 文章管理:查询文章列表、新增文章、编辑文章、删除文章、搜索文章
- 分类管理:查询分类列表、新增分类、编辑分类、删除分类
- 标签管理:查询标签列表、新增标签、编辑标签、删除标签
- 消息管理:登录后回复评论留言会显示博主(我)的头像信息。
三、实体类设计
3.1.实体类
- 博客详情Blog
- 博客分类Type
- 博客标签Tag
- 博客评论Comment
- 用户User
3.2.实体关系
- 博客和分类是多对一的关系:一个博客对应一个分类,一个分类可以对应多个博客
- 博客和用户是多对一的关系:一个博客对应一个用户,一个用户可以对应多个博客
- 博客和评论是一对多的关系:一个博客可以对应多个评论,一个评论对应一个博客
- 评论和回复是一对多的关系:一个评论可以对应多个回复,一个回复对应一个评论
- 博客和标签是多对多的关系:一个博客可以对应多个标签,一个标签可以对应多个博客
3.3.命名约定
- 获取单个对象的方法用get作前缀
- 获取多个对象的方法用list作前缀
- 获取统计值的方法用count作前缀
- 插入方法用的sava做前缀
- 删除方法用的remove做前缀
- 更新方法用的update做前缀
结束语
本次博客仅供个人学习记录,还有很多不足甚至错误有待完善和改正。