# 基于SpringBoot和Thymeleaf的个人博客系统 **Repository Path**: luo-youlu6/blog ## Basic Information - **Project Name**: 基于SpringBoot和Thymeleaf的个人博客系统 - **Description**: 一款基于SpringBoot后端框架与Thymeleaf前端模板引擎开发的个人博客系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-12-11 - **Last Updated**: 2025-08-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 基于SpringBoot和Thymeleaf的个人博客系统 --- ## 简介 这是一款基于**SpringBoot**后端框架与**Thymeleaf**前端模板引擎开发的个人博客系统。系统集成了博客发布、评论管理、留言互动、时间线展示、友情链接管理等核心功能,通过线程池实现异步任务处理,并搭载邮件通知机制,大幅提升用户交互体验。 --- ## 核心功能 - ✍️ **博客管理**:支持博客的查看、发布、编辑与删除,满足内容创作全流程需求。 - 💬 **评论系统**:提供评论发布、回复功能,结合邮件通知及时反馈互动信息。 - 📫 **留言板**:为访客提供留言交流渠道,增强用户间互动性。 - 🕒 **时间线**:以可视化时间轴形式展示内容,提升页面美观度与信息可读性。 - 🔗 **友情链接**:支持添加、编辑、删除其他博客或网站链接,方便资源共享。 - 🔐 **用户认证**:实现管理员登录及会话管理,保障后台操作安全。 - ✨ **Markdown编辑**:集成Markdown富文本编辑功能,轻松实现排版美化。 - 📷 **媒体上传**:支持图片等媒体文件上传与管理,丰富博客内容呈现。 - 📧 **邮件通知**:针对评论、留言等操作触发邮件通知,提升用户粘性。 - 🎨 **样式与图标**:融合自定义CSS及第三方资源(如Font Awesome图标、APlayer播放器),优化视觉体验。 --- ## 架构设计 ### 后端(SpringBoot) - **控制器(Controllers)**:处理博客、评论、留言、时间线及管理员功能的HTTP请求。 - **服务层(Services)**:封装业务逻辑,如博客操作、评论处理、留言管理等。 - **映射器(Mappers)**:基于MyBatis实现数据库访问操作。 - **实体类(Pojo)**:定义博客、评论、用户、留言等数据模型。 - **工具类(Utils)**:包含文件处理、字符串操作、Markdown转换、邮件发送等工具方法。 - **配置(Configuration)**:配置线程池、MVC等系统参数。 ### 前端 - **Thymeleaf模板**:实现动态HTML页面渲染。 - **CSS样式**:包含自定义样式及第三方库(如animate.css、jazz-timeline.css)。 - **JavaScript**:集成APlayer音乐播放器、Meting音乐插件等交互功能。 - **图标与字体**:使用Font Awesome图标库及自定义图标,美化页面元素。 - **图片资源**:存储博客所需的静态图片文件。 --- ## 技术栈 | 技术 | 用途 | |------------|---------| | SpringBoot | 后端开发框架 | | MyBatis | 数据库交互ORM框架 | | Thymeleaf | HTML模板引擎 | | Markdown | 富文本编辑工具 | | JavaMailSender | 邮件通知功能实现 | | APlayer & Meting | 音乐播放组件 | | Font Awesome | 图标资源库 | | CSS3 | 页面样式设计 | | MySQL | 关系型数据库 | | Logback | 日志记录工具 | | FTP | 文件上传与存储服务 | --- ## 安装部署 ### 环境要求 - Java 8及以上版本 - MySQL 5.7及以上版本 - Maven构建工具 - 支持邮件发送的SMTP服务器 ### 操作步骤 1. **克隆仓库**: ```bash git clone https://gitee.com/luo-youlu6/blog.git ``` 2. **导入数据库**: - 将`2022-12-30 13-59-01_blog.sql`文件导入MySQL数据库。 3. **配置应用**: - 打开`application-dev.yml`或`application-pro.yml`,更新数据库、邮件及FTP相关配置。 4. **构建运行**: ```bash mvn clean install mvn spring-boot:run ``` 5. **访问系统**: - 打开浏览器,输入`http://localhost:8080`即可访问。 --- ## 使用指南 ### 公共页面 - `/` 或 `/1`:首页(展示博客列表) - `/blog/{id}`:查看指定博客详情 - `/types/{typeId}`:按分类筛选博客 - `/archives`:博客归档页面 - `/friends`:友情链接页面 - `/message`:留言板页面 - `/about`:关于博主页面 - `/music`:音乐时间线页面 ### 管理员页面 - `/admin`:管理员登录入口 - `/admin/blogs`:博客管理中心 - `/admin/types`:博客分类管理 - `/admin/friendlinks`:友情链接管理 - `/admin/message`:留言板消息管理 --- 在线链接:[个人博客在线体验](http://luotalks.online) ## 贡献方式 若您希望为项目贡献力量,可按以下步骤操作: 1. Fork本仓库 2. 创建新分支(`git checkout -b feature/your-feature`) 3. 提交更改(`git commit -am 'Add new feature'`) 4. 推送分支(`git push origin feature/your-feature`) 5. 提交拉取请求 --- ## 开源协议 本项目基于 [MIT许可证](LICENSE) 开源,详情请查阅`LICENSE`文件。 --- ## 截图展示 > 提示:部分功能截图存放于`src/main/resources/static/images`目录下。 --- ## 致谢 - 感谢**CodeMirror**提供的富文本编辑功能及**APlayer**提供的音乐播放支持。 - 项目开发受Thymeleaf及SpringBoot社区相关项目启发。 --- ## 联系我们 如有疑问或需技术支持,欢迎通过以下方式联系: - 📧 邮箱:luoyoulu15@gmail.com - 💻 码云:[https://gitee.com/luo-youlu6/blog](https://gitee.com/luo-youlu6/blog) --- > 项目由 [码云](https://gitee.com) 平台提供支持。