# daniel-blog **Repository Path**: drop-by319-drop/daniel-blog ## Basic Information - **Project Name**: daniel-blog - **Description**: 基于 vue+springboot 前后端分离的博客系统 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-09-22 - **Last Updated**: 2025-09-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 博客介绍 > 声明:此博客基础代码fork自 **[拾壹博客](https://gitee.com/quequnlong/shiyi-blog)** ,也就是shiyi 分支。 > > 自己会在daniel分支长期维护,每有一次大的版本迭代 会merge到master分支 ## 目录结构 前端项目blog-web为前台,blog-admin为后台。 后端项目位于blog下。 SQL文件位于根目录下的daniel-blog.sql 可直接导入该项目于本地,修改后端配置文件中的数据库等连接信息,项目中使用到的关于七牛云功能和第三方授权登录等需要自行开通。 当你克隆项目到本地后可使用账号:admin,密码:123456 进行登录 本地访问接口文档地址:http://127.0.0.1:8800/daniel/doc.html **ps:请先运行后端项目,再启动前端项目,前端项目配置由后端动态加载。** ```plain blog ├── annotation -- 自定义注解 ├── aspect -- aop模块 ├── config -- 配置模块 ├── common -- 常量模块 ├── controller -- 控制器模块 ├── entity -- 实体类模块 ├── dto -- dto模块 ├── enums -- 枚举模块 ├── exception -- 自定义异常模块 ├── mapper -- 框架核心模块 ├── service -- 服务模块 ├── strategy -- 策略模块(用于扩展第三方登录,搜索模式,上传文件模式等策略) ├── utils -- 工具类模块 ├── quartz -- 定时功能模块 ├── webmagic -- 文章爬虫模块 └── vo -- vo模块 ``` ## 项目特点 - 后台参考"vue-element-template"设计,侧边栏,历史标签,面包屑自动生成。 - 采用Markdown编辑器,写法简单。 - 评论支持表情输入回复等 - 添加音乐播放器,支持在线搜索歌曲。 - 前后端分离部署,适应当前潮流。 - 接入第三方登录,减少注册成本。 - 留言采用弹幕墙,更加炫酷。 - 支持代码高亮和复制,图片预览,深色模式等功能,提升用户体验。 - 搜索文章支持高亮分词,响应速度快。 - 新增文章目录、推荐文章等功能,优化用户体验。 - 新增aop注解实现日志管理 - 支持动态权限修改,采用RBAC模型,前端菜单和后台权限实时更新。 - 后台管理支持修改背景图片,博客配置等信息,操作简单,支持上传相册。 - 代码支持多种搜索模式(Elasticsearch或MYSQL),可支持配置。 - 代码支持多种文件上传模式(七牛云oss或本地上传),可支持配置。 - 代码遵循阿里巴巴开发规范,利于开发者学习。 - 使用websocket技术实现博客在线阅读人数。 ## 技术介绍 **前端:** vue + vuex + vue-router + axios + vuetify + element + echarts **后端:** SpringBoot + nginx + docker + sa-token + Swagger2 + MyBatisPlus + Mysql + Redis + elasticsearch **其他:** 接入QQ、微博、码云第三方登录,接入七牛云对象存储 ## 运行环境 **服务器:** 腾讯云2核4G CentOS7.6 **对象存储:** 七牛云OSS **最低配置:** 1核2G服务器(关闭ElasticSearch) ## 开发环境 | **开发工具** | **说明** | | ----------------------------- | --------------------------- | | IDEA | Java开发工具IDE | | VSCode | Vue开发工具IDE | | Navicat | MySQL远程连接工具 | | Another Redis Desktop Manager | Redis远程连接工具 | | finalshell | Linux远程连接和文件上传工具 | | **开发环境** | **版本** | | ------------- | -------- | | JDK | 17 | | MySQL | 5.5.0 | | Redis | 6.0.5 | | Elasticsearch | 7.9.2 | ## 未来计划 - [x] 调整图片获取方式为有效期24小时,而不是永久有效 - [ ] 配置文件支持nacos配置 - [ ] 将后端项目扩展为微服务 - [ ] 抽取邮件、短信、图片为一个单独的服务 - [ ] web端和admin抽取成2个服务 - [ ] 系统支持Docker Compose脚本一键部署。 ## 赞赏 **服务器**和**域名**等服务的购买和续费都会**产生一定的费用**,为了**维持项目的正常运作**,如果觉得本项目**对您有帮助**的话,欢迎朋友能够**给予一些支持**,我将用于**提升服务器配置**,感谢小伙伴们的支持( **ps**: 小伙伴赞赏的时候可以备注一下下 ~) | **微信** | **支付宝** | | ------------------------------------------------------------ | ------------------------------------------------------------ | | ![img](https://gitee.com/daniel-pp/daniel-blog/raw/master/upload_data/wechatpay.png) | ![img](https://gitee.com/daniel-pp/daniel-blog/raw/master/upload_data/alipay.png) | ## 鸣谢 特别鸣谢 [拾壹博客](https://gitee.com/quequnlong/shiyi-blog)