Coder Social home page Coder Social logo

llldddbbb / dbblog Goto Github PK

View Code? Open in Web Editor NEW
1.2K 35.0 405.0 5.58 MB

基于SpringBoot2.x+Vue2.x+ElementUI+Iview+Elasticsearch+RabbitMQ+Redis+Shiro的多模块前后端分离的博客项目

Home Page: http://www.dblearn.cn

License: Apache License 2.0

JavaScript 11.95% HTML 0.25% Vue 41.59% CSS 1.75% Java 36.67% FreeMarker 2.33% Dockerfile 0.03% Stylus 3.46% SCSS 1.97%
sprinboot vue blog elasticsearch rabbitmq element-ui iview shiro redis

dbblog's Introduction

工作时间原因,已不维护了,请见谅!

image.png

简介

这是一个基于Springboot2.x,vue2.x的前后端分离的开源博客系统,提供 前端界面+管理界面+后台服务 的整套系统源码。响应式设计,手机、平板、PC,都有良好的视觉效果!

  • 你可以拿它作为前端Vue2.x学习的练手教程;
  • 你也可以把它作为springboot2.x技术的学习项目;
  • 你也可以拿它作为当下火热的ElasticSearch和RabbitMQ的学习Demo;
  • 你也可以将其视为一个前后端分离的项目实践;
  • 你还可以作为SpringCloud服务化**的学习理解;
  • ...

使用技术

  • SpringBoot 2.x 后台基本框架
  • Vue 2.x 前端基本框架
  • ElementUI:后台管理页面UI库
  • IView:前端UI库
  • ElasticSearch 搜索层
  • RabbitMQ 消息队列
  • Shiro 鉴权层
  • Redis 缓存层
  • Swagger 文档
  • Mybaits-Plus 好用的mybatis框架
  • lombox getter setter插件
  • druid 数据库连接池
  • jasypt 加密
  • 七牛云 图床

模块分层

后端模块

dbblog
├── dbblog-auth   # 鉴权模块:shiro
│   ├── pom.xml
│   └── src
├── dbblog-core   # 核心模块:配置文件,Entity类,mapper类,工具类,异常过滤等
│   ├── pom.xml
│   └── src
├── dbblog-manage # 后台管理界面Service
│   ├── pom.xml
│   └── src
├── dbblog-portal # 前端界面Service
│   ├── pom.xml
│   └── src
├── dbblog-search # 搜索模块:elasticSearch
│   ├── pom.xml
└── └── src

后台依赖关系

dbblog-core -> dbblog-auth -> dbblog-manage -> dbblog-portal -> dbblog-search

  • 采用多模块的形式,便于后续SpringCloud微服务的改造升级

前端模块

后台管理页面

├── assets
├── components # 公共组件
├── element-ui
├── element-ui-theme # elementUI主题
├── icons   
├── router  # 路由
├── store   # vuex
├── utils   # js工具类
└── views   
    ├── common # 公共模块
    └── modules
        ├── article    # 文章模块
        ├── book       # 阅读模块
        ├── operation  # 运维模块
        └── sys        # 系统模块

前台页面

├── assets
├── common
├── components
│   ├── content # 页面
│   │   ├── ArticleContent.vue      # 文章详情页
│   │   ├── ArticleListContent.vue  # 文章列表页
│   │   ├── BookContent.vue         # 图书详情页
│   │   ├── BookListContent.vue     # 图书列表页
│   │   ├── BookNoteContent.vue     # 笔记详情页
│   │   ├── HomeContent.vue         # 首页
│   │   ├── SearchResult.vue        # 搜索结果页
│   │   └── TimeLineContent.vue     # 归档页
│   ├── footer
│   ├── header
│   ├── index
│   ├── utils
│   └── views # 页面组件库
│       ├── Archive 
│       ├── Article
│       ├── Book
│       ├── BookNote
│       ├── Classify
│       └── TimeLine
├── router # 路由
├── store  # Vuex
└── utils  # js工具类

项目部署

服务端

项目后端环境

  • JDK1.8
  • Mysql5.7
  • Redis
  • IDEA编译器
  • Lombox插件(百度一下)
  • ElasticSearch 6.x
  • RabbitMQ
  • IDEA编译器

部署步骤:

  1. 创建数据库dbblog,并导入dbblog-backend -> db里的所有sql文件
  2. 修改dbblog-backend -> dbblog-> dbblog-core里的application-*.yml的数据库连接、redis连接、ElasticSearch连接、RabbitMQ连接
  3. 导入项目,并且运行dbblog-backend -> dbblog-search -> BlogApplication里的main方法

前端

前端环境:

  • Node.js 8.0+
  • WebStorm编辑器

部署步骤:

  1. 导入项目,运行 npm install(如果失败,清空包后试试cnpm install)
  2. 启动项目:npm run dev
  3. 前端地址:localhost:8002 管理界面地址:localhost:8888 账号admin,密码123456

界面预览

博文图片1.png

博文图片2.png

博文图片3.png

博文图片6.png

博文图片7.png

1.png

2.png

3.png

4.png

碎碎念

上大学的时候做过博客,技术选型也从一开始的SSM+JSP 博客1

--> 过渡到分模块的SpringBoot 博客2

--> 到现在的前后端分离博客 博客3

如果是初学Java的朋友也可以跟着流程借鉴借鉴这些代码,试着实现一个自己的博客,相信能对你的成长有所帮助!

如果有心,不妨请博主喝杯茶::laughing::

支付.jpg

最后的最后,我的github地址是https://github.com/llldddbbb/dbblog,开源不易,一定要给我==Star==哦!!

dbblog's People

Contributors

dependabot[bot] avatar llldddbbb avatar zzzoey avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dbblog's Issues

希望有个流程类的引导

表示后端写前端的时候感觉思路不是很清晰,尤其是涉及到组件化,有点不知道从哪下手。。😂

为什么在运行sql文件的时候,category那里的rank字段会出现语法错误?

我在搭数据库的时候,这个地方会中断,而且我没找到问题出在什么地方,日志里也没有说问题所在,只说rank字段创建语法有问题。
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'rank int null comment '级别',
parent_id int default '0' null comment '父主键' at line 6

部署报错

image

sudo docker run -t -i dbblog_v2 /bin/bash 报错

前台用nginx作为服务器路由问题

前台我使用webpack打包后使用用nginx作为服务器 ,好像因为前台不像后台使用的前端路由 ,只有首页有效 跳转其他页面都会有问题 请问要怎么处理

域名过期

想访问一下示例网站,发现域名过期了。

没有权限时,直接退出登录。

进行权限设置时,用户没有权限就会直接退出登录。这样的操作不合理,有什么解决办法吗?还有这是什么问题引起的。

es版本

es要用什么版本啊,我用5.6后端一直报连不上的错

项目启动时es报错,跪求指点

2019-04-23 16:30:44.128 ERROR 20892 --- [ main] .d.e.r.s.AbstractElasticsearchRepository : failed to load elasticsearch nodes : org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available: [{#transport#-1}{WWsOM8x5TaqhBy1K3nR9Dw}{127.0.0.1}{127.0.0.1:9300}]
NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{WWsOM8x5TaqhBy1K3nR9Dw}{127.0.0.1}{127.0.0.1:9300}]]
at org.elasticsearch.client.transport.TransportClientNodesService.ensureNodesAreAvailable(TransportClientNodesService.java:349)
at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:247)
at org.elasticsearch.client.transport.TransportProxyClient.execute(TransportProxyClient.java:60)
at org.elasticsearch.client.transport.TransportClient.doExecute(TransportClient.java:381)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:407)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:396)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:46)
at org.springframework.data.elasticsearch.core.ElasticsearchTemplate.getSearchResponse(ElasticsearchTemplate.java:946)
at org.springframework.data.elasticsearch.core.ElasticsearchTemplate.doScroll(ElasticsearchTemplate.java:808)
at org.springframework.data.elasticsearch.core.ElasticsearchTemplate.startScroll(ElasticsearchTemplate.java:822)
at org.springframework.data.elasticsearch.core.ElasticsearchTemplate.delete(ElasticsearchTemplate.java:719)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.