由博主发表个人的博客日记,用户可以在相应的博客页面进行评论
目前已上线可进行访问http://120.27.233.216:8081/HomePage
若无法完成注册可使用
test
123456
进行登录
1. 项目功能模块分析
核心功能模块:
1. 用户管理模块
用户注册和登录功能
用户信息管理(个人资料、头像上传)
用户权限控制(普通用户 vs 管理员)
2. 文章管理模块
文章发布、编辑、删除
文章分类管理
文章浏览和搜索
热门文章推荐
3. 评论系统模块
文章评论功能
评论管理(添加、删除)
评论统计
4. 博客展示模块
首页展示
文章详情页
分类浏览
个人博客页面
5. 管理员后台模块
数据统计仪表板
用户管理
文章管理
评论管理
分类管理
2. 主要功能路径描述
用户端功能路径:
1. 首页访问路径
/HomePage → 显示首页内容,包括热门文章、用户登录状态
2. 用户认证路径
/login → 登录页面
/login/login → 处理登录请求
/login/register → 注册页面
/login/register → 处理注册请求
/logout → 退出登录
3. 文章浏览路径
/article/list → 文章列表页面
/article/category/{category} → 按分类查看文章
/article/categories → 分类页面
/blog/article/{id} → 文章详情页面
/all-articles → 所有文章页面
4. 个人中心路径
/blog/information → 个人信息管理页面
/blog/updateUserInfo → 更新用户信息
/blog/uploadImg → 头像上传
5. 评论功能路径
/blog/comment/add → 添加评论
/blog/comment/delete → 删除评论
管理员端功能路径:
1. 管理后台入口
/admin/dashboard → 数据统计仪表板
/admin/admin → 管理后台主页
2. 用户管理路径
/admin/userManagement → 用户管理页面
/admin/api/user/{id} → 获取用户信息
/admin/api/user/save → 保存用户信息
/admin/api/user/delete → 删除用户
3. 文章管理路径
/admin/blogManagement → 文章管理页面
/admin/api/blog/{id} → 获取文章信息
/admin/api/blog/save → 保存文章
/admin/api/blog/{id}/delete → 删除文章
......
技术架构特点:
前端模板引擎:使用Thymeleaf进行页面渲染
数据库操作:使用MyBatis-Plus进行数据持久化
会话管理:基于HttpSession的用户状态管理
文件上传:支持图片上传功能
权限控制:基于用户角色的访问控制
这个博客系统实现了完整的博客功能,包括用户管理、文章发布、评论互动、分类
项目为本人独自开发
我负责的具体任务
1. 系统架构设计
设计MVC架构模式
配置Spring Boot + MyBatis-Plus技术栈
设计数据库表结构
2. 用户管理系统
用户注册/登录功能
用户信息管理(个人信息、头像上传)
会话管理和权限控制
3. 文章管理系统
文章的CRUD操作
文章分类管理
文章浏览统计
热门文章推荐算法
4. 评论系统
评论的添加/删除功能
评论权限控制(只能删除自己的评论)
评论统计功能
5. 管理后台系统
数据统计仪表板
用户管理界面
文章管理界面
评论管理界面
分类管理功能
6. 前端界面开发
使用Thymeleaf模板引擎
响应式页面设计
用户交互功能实现
7. 部署和运维
编写部署脚本(deploy.sh)
编写应用管理脚本(start.sh)
数据库维护和优化
2. 技术栈、架构亮点和难点
技术栈
后端技术:
Spring Boot 2.6.14:主框架
MyBatis-Plus 3.5.1:ORM框架
MySQL 8.0:数据库
Thymeleaf:模板引擎
Lombok:代码简化工具
前端技术:
HTML5 + CSS3:页面结构
JavaScript:交互逻辑
Bootstrap:响应式布局
部署技术:
Maven:项目构建
Shell脚本:自动化部署
Linux:服务器环境
难点:用户登录状态维护
解决:使用HttpSession进行状态管理,添加详细的调试日志
难点:确保用户只能删除自己的评论
解决:在删除前验证评论所有者
难点:没有独立的分类表,需要从文章中提取分类
解决:通过创建示例文章来"添加"分类,实现分类管理功能
难点:统计功能可能因为数据问题导致异常
解决:为每个统计功能添加独立的异常处理,确保页面正常显示
难点:新用户登录时没有个人信息记录
解决:自动创建默认用户信息,提升用户体验