多人协作博客平台项目简介
作者:麦兜 更新时间:2025-06-12 19:04:01 阅读 566
项目简介
袋鼠bbs 是一套前后端不分离社区系统,基于目前主流 Java Web 技术栈(SpringBoot + MyBatis-plus + MySQL + Redis + Kafka + Elasticsearch + shiro + ...)。包含帖子、评论、私信、系统通知、点赞、关注、搜索、用户设置、数据统计等模块。
核心技术栈
后端:
SpringSpring BootSpring MVCORM:MyBatis-plus数据库:MySQL 5.7分布式缓存:Redis本地缓存:guava消息队列:Kafka搜索引擎:Elasticsearch 7.2.0安全:shiro邮件任务:Spring Mail日志:SLF4J(日志接口) + Logback(日志实现)前端:
ThymeleafBootstrap 4.x开发环境
操作系统:mac构建工具:Apache Maven集成开发工具:Intellij IDEA接口测试工具:Postman压力测试工具:Apache JMeter版本控制工具:GitJava 版本:8界面展示首页:
登录页:
帖子发布页(支持 MarkDown):
帖子详情页:
个人主页:
朋友私信页:
私信详情页:
系统通知页:
通知详情页:
账号设置页:
搜索展示页:
功能列表
注册
登录 | 登出
动态生成验证码账号设置
修改头像修改密码帖子模块
发布帖子分页显示所有的帖子先按照热度再按照时间进行排序查看帖子详情权限管理(shiro)未登录用户无法发帖评论模块
发布对帖子的评论分页显示评论发布对评论的回复权限管理(shiro)未登录用户无法使用评论功能私信模块
发送私信私信列表查询当前用户的会话列表每个会话只显示一条最新的私信支持分页显示私信详情查询某个会话所包含的所有私信访问私信详情时,将显示的私信设为已读状态支持分页显示权限管理(shiro)未登录用户无法使用私信功能统一处理 404 / 500 异常
普通请求异常异步请求异常统一记录日志
点赞模块
支持对帖子、评论/回复点赞第 1 次点赞,第 2 次取消点赞首页统计帖子的点赞数量详情页统计帖子和评论/回复的点赞数量详情页显示当前登录用户的点赞状态(赞过了则显示已赞)统计我的获赞数量权限管理(shiro)未登录用户无法使用点赞相关功能关注模块
关注功能取消关注功能统计用户的关注数和粉丝数我的关注列表(查询某个用户关注的人),支持分页我的粉丝列表(查询某个用户的粉丝),支持分页权限管理(shiro)未登录用户无法使用关注相关功能系统通知模块
通知列表显示评论、点赞、关注三种类型的通知通知详情分页显示某一类主题所包含的通知进入某种类型的系统通知详情,则将该页的所有未读的系统通知状态设置为已读未读数量分别显示每种类型的系统通知的未读数量显示所有系统通知的未读数量导航栏显示所有消息的未读数量(未读私信 + 未读系统通知)权限管理(shiro)未登录用户无法使用系统通知功能搜索模块
面试模块
权限管理(shiro)未登录用户无法查看个人简介模块
与我联系模块
本地运行
各位如果需要将项目部署在本地进行测试,以下环境请提前备好:
Java 8MySQL 5.7RedisKafkaElasticsearch 7.2.0然后**修改配置文件中的信息为你自己的本地环境,直接运行是运行不了的**
本地运行需要修改的配置文件信息如下:
1)`application-develop.properties`:
MySQLSpring Mail(邮箱需要开启 SMTP 服务)Kafka:consumer.group-id(该字段见 Kafka 安装包中的 consumer.proerties,可自行修改, 修改完毕后需要重启 Kafka)Elasticsearch:cluster-name(该字段见 Elasticsearch 安装包中的 elasticsearch.yml,可自行修改)阿里云oss(需要新建一个对象存储空间,用来存放上传的头像图片)2)`logback-spring-develop.xml`:
LOG_PATH:日志存放的位置每次运行需要打开:
MySQLRedisElasticsearchKafka另外,还需要事件建好数据库 community,然后依次运行项目 sql 文件夹下的这几个 sql 文件建立数据库表:
部署架构
因为体量不是太大,单体就可以
声明:本文由"麦兜"发布,不代表"破站"立场,转载联系作者并注明出处:https://www.848586.cn/183491.html
