当前位置:首页 > 技术分析 > 正文内容

分享一套SpringBoot开发博客系统源码,包含完整开发文档和视频

ruisui883个月前 (02-05)技术分析23

基本信息

项目名称:eblog

摘要:eblog是一个基于Springboot2.1.2开发的博客学习项目,为了让项目融合更多的知识点,达到学习目的,编写了详细的从0到1开发文档。

主要学习包括:自定义Freemarker标签,使用shiro+redis完成了会话共享,redis的zset结构完成本周热议排行榜,t-io+websocket完成即时消息通知和群聊,rabbitmq+elasticsearch完成博客内容搜索引擎等。值得学习的地方很多!

项目说明:

本博客是学习过程中搭建的项目,为了融合更多知识点,让博客看起来更加高大上,使用了多个框架组合,有些也是企业级项目中常用的解决方式。不够说实话,还有挺多内容缺少的,比如xss攻击预防等安全方面的。

代码结构:

eblog

│

├─src

│  ├─main

│  │  ├─java

│  │  │  └─com

│  │  │      └─markerhub

│  │  │          │  
CodeGenerator
.java 
#代码生成

│  │  │          │

│  │  │          ├─common

│  │  │          │  ├─exception 
#全局异常处理

│  │  │          │  ├─lang

│  │  │          │  └─templates 
#自定义Freemarker标签封装

│  │  │          │

│  │  │          ├─config 
#整合配置

│  │  │          ├─controller

│  │  │          ├─entity

│  │  │          │

│  │  │          ├─im 
#即时群聊

│  │  │          │  ├─handler

│  │  │          │  ├─message

│  │  │          │  ├─server

│  │  │          │  └─vo

│  │  │          │

│  │  │          ├─mapper

│  │  │          ├─schedules 
#定时任务

│  │  │          │

│  │  │          ├─search 
#内容搜索引擎与同步

│  │  │          │  ├─model

│  │  │          │  ├─mq

│  │  │          │  └─repository

│  │  │          │

│  │  │          ├─service

│  │  │          │  └─impl

│  │  │          │

│  │  │          ├─shiro 
#shiro整合

│  │  │          ├─
template
#定义标签

│  │  │          ├─util

│  │  │          └─vo

│  │  │

│  │  └─resources

│  │      │  application.yml

│  │      ├─mapper

│  │      ├─
static

│  │      │  └─res

│  │      └─templates 
#页面模板

技术选型:

  • 核心框架:Springboot 2.1.2
  • 安全框架:Apache Shiro 1.4
  • 持久层框架:Mybatis + mybatis plus 3.2.0
  • 页面模板:Freemarker
  • 缓存框架:Redis
  • 数据库:mysql
  • 消息队列:RabbitMq
  • 分布式搜索:Elasticsearch 6.4.3
  • 双工通讯协议:websocket
  • 网络通讯框架:t-io 3.2.5
  • 工具集合:hutool 4.1.17

知识要点:

  • 基于mybatis plus快速代码生成
  • 封装与自定义Freemarker标签
  • 使用shiro+redis完成了会话共享
  • redis的zset结构完成本周热议排行榜
  • t-io+websocket完成即时消息通知和群聊
  • 基于rabbitmq+elasticsearch的内容同步与搜索引擎

项目部署:

项目中我们用到了几个中间件,mysql、rabbitmq、elasticsearch。所以要提前安装好哈。

如何交流、反馈?

  • Git仓库:https://github.com/markerhub/eblog
  • 如需关注项目最新动态,请Watch、Star项目,同时也是对项目最好的支持

项目截图:

如何获取项目地址与详细的开发文档?

关注我,帮忙转发一下这篇文章后私信关键字【源码】

即可获取项目,以及作者的详细开发文档、以及完整项目讲解视频!

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/1689.html

标签: 技术博客
分享给朋友:

“分享一套SpringBoot开发博客系统源码,包含完整开发文档和视频” 的相关文章

体检刷卡收费管理系统

体检刷卡收费管理系统headerfooter《体检刷卡收费管理系统》是针对各医院进行体检刷卡收费管理的一套系统。软件集办卡、充值、刷卡消费、体检登记与一体。主要功能:1.基本信息:科室设置、套餐设置、单项设置、本院信息;2.体检卡管理:单位人员办卡、个人办卡、体检卡充值、体检卡禁用、体检卡开通、体检...

Ubuntu 24.10发行版登场:Linux 6.11内核、GNOME 47桌面环境

IT之家 10 月 11 日消息,Canonical 昨日发布新闻稿,正式推出代号为 Oracular Oriole 的 Ubuntu 24.10 发行版。新版在内核方面升级到最新 6.11 版本,并采用 GNOME 47 桌面环境。Ubuntu 24.10 发行版调整了内核策略,开始选择最新的上游...

vue3父子组件传对象,子组件访问修改父组件对象中的属性值

在Vue 3中,父子组件之间的数据传输通常通过props和emit进行。父组件可以通过props向下传递数据给子组件,子组件则可以通过emit向上通知父组件更新数据。如果需要在子组件中修改父组件对象中的属性值,可以使用一个名为ref的Vue 3新特性。以下是一个示例,演示了如何在Vue 3中实现父子...

身体越柔软越好?刻苦拉伸可能反而不健康 | 果断练

坐下伸直膝盖,双手用力向前伸,再用力……比昨天前进了一厘米,又进步了! 这么努力地拉伸,每个人都有自己的目标,也许是身体健康、线条柔美、放松肌肉、体测满分,也可能为了随时劈个叉,享受一片惊呼。 不过,身体柔软,可以享受到灵活的福利,也可能付出不稳定的代价,并不是越刻苦拉伸越好。太硬或者太软,都不安全...

10款超牛Vim插件,爱不释手了

我是一个忠实的Vim编辑器用户,从事开发工作多年,我一直都非常喜欢使用Vim。轻量、便捷,而且,熟悉了Vim相关的快捷键之后,效率能够成倍的提升。除了这些之外,Vim像很多知名的IDE、编辑器一样,也支持插件配置,通过这些插件,可以实现更多高级、高效的操作。今天,就来给大家分享10个我特别喜欢的Vi...

html5+css3做的响应式企业网站前端源码

大家好,今天给大家介绍一款,html5+css3做的响应式企业网站前端源码 (图1)。送给大家哦,获取方式在本文末尾。首页banner幻灯片切换特效(图2)首页布局简约合理(图3)关于我们页面(图4)商品列表(图5)商品详情(图6)服务介绍(图7)新闻列表(图8)联系我们(图9)源码完整,需要的朋友...