{"id":15027812,"url":"https://github.com/llldddbbb/dbblog","last_synced_at":"2025-05-16T06:02:18.236Z","repository":{"id":37285963,"uuid":"151801902","full_name":"llldddbbb/dbblog","owner":"llldddbbb","description":"基于SpringBoot2.x+Vue2.x+ElementUI+Iview+Elasticsearch+RabbitMQ+Redis+Shiro的多模块前后端分离的博客项目","archived":false,"fork":false,"pushed_at":"2022-12-12T12:27:16.000Z","size":5712,"stargazers_count":1169,"open_issues_count":31,"forks_count":400,"subscribers_count":33,"default_branch":"master","last_synced_at":"2025-04-08T15:12:17.404Z","etag":null,"topics":["blog","elasticsearch","element-ui","iview","rabbitmq","redis","shiro","sprinboot","vue"],"latest_commit_sha":null,"homepage":"http://www.dblearn.cn","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/llldddbbb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-10-06T03:36:47.000Z","updated_at":"2025-03-29T12:17:22.000Z","dependencies_parsed_at":"2023-01-27T19:16:19.447Z","dependency_job_id":null,"html_url":"https://github.com/llldddbbb/dbblog","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/llldddbbb%2Fdbblog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/llldddbbb%2Fdbblog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/llldddbbb%2Fdbblog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/llldddbbb%2Fdbblog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/llldddbbb","download_url":"https://codeload.github.com/llldddbbb/dbblog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254478160,"owners_count":22077675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blog","elasticsearch","element-ui","iview","rabbitmq","redis","shiro","sprinboot","vue"],"created_at":"2024-09-24T20:07:06.012Z","updated_at":"2025-05-16T06:02:18.181Z","avatar_url":"https://github.com/llldddbbb.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e 工作时间原因，已不维护了，请见谅！\n\n\n![image.png](http://oss.dblearn.cn/dbblog/20200314/be0b7b34f536421690a41e4063ddecc5.png)\n\n## 简介\n这是一个基于Springboot2.x，vue2.x的前后端分离的开源博客系统，提供 前端界面+管理界面+后台服务 的整套系统源码。响应式设计，手机、平板、PC，都有良好的视觉效果！\n\n- 你可以拿它作为前端Vue2.x学习的练手教程；\n- 你也可以把它作为springboot2.x技术的学习项目；\n- 你也可以拿它作为当下火热的ElasticSearch和RabbitMQ的学习Demo;\n- 你也可以将其视为一个前后端分离的项目实践；\n- 你还可以作为SpringCloud服务化思想的学习理解；\n- ...\n## 使用技术\n- SpringBoot 2.x 后台基本框架\n- Vue 2.x 前端基本框架\n- ElementUI：后台管理页面UI库\n- IView：前端UI库\n- ElasticSearch 搜索层\n- RabbitMQ 消息队列\n- Shiro 鉴权层\n- Redis 缓存层\n- Swagger 文档\n- Mybaits-Plus 好用的mybatis框架\n- lombox getter setter插件\n- druid 数据库连接池\n- jasypt 加密\n- 七牛云 图床\n\n\n## 模块分层\n### 后端模块\n```shell\ndbblog\n├── dbblog-auth   # 鉴权模块：shiro\n│   ├── pom.xml\n│   └── src\n├── dbblog-core   # 核心模块：配置文件，Entity类，mapper类，工具类，异常过滤等\n│   ├── pom.xml\n│   └── src\n├── dbblog-manage # 后台管理界面Service\n│   ├── pom.xml\n│   └── src\n├── dbblog-portal # 前端界面Service\n│   ├── pom.xml\n│   └── src\n├── dbblog-search # 搜索模块：elasticSearch\n│   ├── pom.xml\n└── └── src\n```\n### 后台依赖关系\n\ndbblog-core -\u003e dbblog-auth -\u003e dbblog-manage -\u003e dbblog-portal -\u003e dbblog-search\n- 采用多模块的形式，便于后续SpringCloud微服务的改造升级\n\n### 前端模块\n#### 后台管理页面\n```shell\n├── assets\n├── components # 公共组件\n├── element-ui\n├── element-ui-theme # elementUI主题\n├── icons   \n├── router  # 路由\n├── store   # vuex\n├── utils   # js工具类\n└── views   \n    ├── common # 公共模块\n    └── modules\n        ├── article    # 文章模块\n        ├── book       # 阅读模块\n        ├── operation  # 运维模块\n        └── sys        # 系统模块\n\n\n```\n#### 前台页面\n```shell\n├── assets\n├── common\n├── components\n│   ├── content # 页面\n│   │   ├── ArticleContent.vue      # 文章详情页\n│   │   ├── ArticleListContent.vue  # 文章列表页\n│   │   ├── BookContent.vue         # 图书详情页\n│   │   ├── BookListContent.vue     # 图书列表页\n│   │   ├── BookNoteContent.vue     # 笔记详情页\n│   │   ├── HomeContent.vue         # 首页\n│   │   ├── SearchResult.vue        # 搜索结果页\n│   │   └── TimeLineContent.vue     # 归档页\n│   ├── footer\n│   ├── header\n│   ├── index\n│   ├── utils\n│   └── views # 页面组件库\n│       ├── Archive \n│       ├── Article\n│       ├── Book\n│       ├── BookNote\n│       ├── Classify\n│       └── TimeLine\n├── router # 路由\n├── store  # Vuex\n└── utils  # js工具类\n\n```\n## 项目部署\n### 服务端\n项目后端环境\n- JDK1.8\n- Mysql5.7\n- Redis\n- IDEA编译器\n- Lombox插件（百度一下）\n- ElasticSearch 6.x\n- RabbitMQ\n- IDEA编译器\n\n部署步骤：\n1. 创建数据库dbblog，并导入dbblog-backend -\u003e db里的所有sql文件\n2. 修改dbblog-backend -\u003e dbblog-\u003e dbblog-core里的application-*.yml的数据库连接、redis连接、ElasticSearch连接、RabbitMQ连接\n3. 导入项目，并且运行dbblog-backend -\u003e dbblog-search -\u003e BlogApplication里的main方法\n\n### 前端\n前端环境：\n- Node.js 8.0+\n- WebStorm编辑器\n\n部署步骤：\n1. 导入项目，运行 npm install（如果失败，清空包后试试cnpm install）\n2. 启动项目：npm run dev\n3. 前端地址：localhost:8002 管理界面地址：localhost:8888  账号admin，密码123456\n\n## 界面预览\n\n![博文图片1.png](http://oss.dblearn.cn/dbblog/20190310/34c7f3a92bae478c882caaed586042dc.png)\n\n![博文图片2.png](http://oss.dblearn.cn/dbblog/20190310/2403f9585bf64dd2a90b180314a93403.png)\n\n![博文图片3.png](http://oss.dblearn.cn/dbblog/20190310/c1af8818cbac486394eb083463c3c2d7.png)\n\n![博文图片6.png](http://oss.dblearn.cn/dbblog/20190310/558c14cbdee84be99f32c267033df276.png)\n\n![博文图片7.png](http://oss.dblearn.cn/dbblog/20190310/9289e11d4e2b489885246c6023924458.png)\n\n![1.png](http://oss.dblearn.cn/dbblog/20190310/61b8efb183144323b4138b2b9eecdfb7.png)\n\n![2.png](http://oss.dblearn.cn/dbblog/20190310/4e0874dc164e44028e500769f829d7e1.png)\n\n![3.png](http://oss.dblearn.cn/dbblog/20190310/7c641e6681ef468599dbe152bc0ea02a.png)\n\n![4.png](http://oss.dblearn.cn/dbblog/20190310/ee69937e2bd9494f882da788932123ca.png)\n\n\n## 碎碎念\n上大学的时候做过博客，技术选型也从一开始的SSM+JSP [博客1](https://github.com/llldddbbb/Blog) \n\n--\u003e 过渡到分模块的SpringBoot [博客2](https://github.com/llldddbbb/Blog2) \n\n--\u003e  到现在的前后端分离博客 [博客3](https://github.com/llldddbbb/dbblog) \n\n如果是初学Java的朋友也可以跟着流程借鉴借鉴这些代码，试着实现一个自己的博客，相信能对你的成长有所帮助！\n\n如果有心，不妨请博主喝杯茶::laughing::\n\n![支付.jpg](http://oss.dblearn.cn/dbblog/20190310/7517419c57e14d548ec13f4a550edbc0.jpg)\n\n最后的最后，我的github地址是[https://github.com/llldddbbb/dbblog](https://github.com/llldddbbb/dbblog)，开源不易，一定要给我==Star==哦！！\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fllldddbbb%2Fdbblog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fllldddbbb%2Fdbblog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fllldddbbb%2Fdbblog/lists"}