myCrayon个人博客项目基于springBoot+Vue全栈开发

news2024/11/23 19:11:43

目录

项目介绍

简介

项目架构

项目模块组成

数据库设计

项目展示

首页

用户登录与注册

个人信息模块

商城展示

博客模块

博客浏览

博客发布与编辑

博客搜索

社区模块

新闻模块

后台管理系统

部署方式

结语


项目介绍

简介

项目类似于CSDN,支持所有用户浏览博客和发布个人的博客,同时增加商城,社区等模块,为个人独立全栈开发项目,无套用任何现成模板。

项目架构

整体框架:基于Vue+SpringBoot前后端分离开发,前端采用Vue2.5语法(2、3语法都有),后端采用SpringBoot3+jdk17单体架构开发。

数据库:Mysql8+Redis6。

消息队列:rabbitmq。

服务器部署:阿里云。

框架说明版本号
springboot更新springboot3,使用新技术3.0.5
jdkspringboot3最低要求jdk17升级为17
javax.mail使用java进行邮箱发送1.6.2
easyExcel主要用于后台的导入导出excel表格2.1.1
mybatis用不惯编程式的plus版,还是适合自己动手写sql升级为3.0.2

项目模块组成

admin:后台管理系统,商城、博客、用户管理等

upload:用户头像、图片等文件上传

blog:博客、社区模块,博客推荐、搜索、浏览、发布、点赞收藏分享

mail:用户信箱模块

news:新闻模块,仅支持管理员发布和推送、用户浏览

user:用户模块,用户个人信息,账户、个人主页,用户之间聊天等

shop:商城模块,商品的浏览与购买

数据库设计

除去多余的students表,目前共计有17张表。其中全项目的验证码也均存储在本地数据库,接口也为本地实现。

项目展示

首页

没有考虑太多,仅做了新闻展示和部分工具推荐。

用户登录与注册

登录界面,支持三种方式登录,账户或用户名+密码登录,以及邮箱验证码登录。

数据库里的用户密码均为加密存储,确保用户安全。

注册这里的用户名是唯一的,账号为系统发放。

数据库加密存储用户隐私信息,确保用户隐私信息安全。

系统目前仅支持通过邮箱验证码的方式重新找回密码。

个人信息模块

个人主页展示个人信息,消息中心展示博客被点赞、评论信息,私信支持用户之间互相发送私信。

商城展示

支持商品模糊搜索,特价促销商品有独特标签展示,支持登录用户的详细浏览与商品购买。

商品购买后可以在个人订单中查看商品状态信息,也可以进行取消和付款等操作。

博客模块

博客浏览

分为三个分类,推荐、关注,热门博客,推荐通过自己实现的简易推荐算法,根据用户的token识别不同用户,对用户进行随机推荐博客,未登录用户仅可以浏览十条推荐博客。关注则是推送用户关注的人博客,热门则是根据博客点赞量进行排序。

浏览具体博客页面,支持用户二次编辑博客。

支持用户点赞评论收藏分享等功能。

博客发布与编辑

用户登录后点击右上角的发布即可写自己的博客,支持markdown语法,博客大体效果如上图所示。支持保存草稿和二次编辑,发布时可以选择封面,编辑简介,设置博客权限等。

博客搜索

支持模糊搜索,本地存储10条搜索历史,以及热门词条推荐。

社区模块

目前该模块还在开发中,目标是打造成一个交流社区,类似于csdn的问答,这里不做过多展示。

新闻模块

目前仅做了首页新闻展示,支持管理员发布,并不完善,这里不多展示。

后台管理系统

支持管理员用户查看和管理各个模块,还在开发中待完善。

部署方式

通过阿里云服务器进行部署,使用tomcat进行文件存储和jar包运行,ngnix部署前端vue项目。

结语

该项目从今年一月开始着手开发,前后端同步进行,总共耗时1个月,后期会完善项目后进行开源。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1876821.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MyBatis Plus条件构造器使用

1Wrapper: 条件构造抽象类,最顶端父类 1.1 AbstractWrapper: 用于查询条件封装,生成 sql 的 where 条件 1.2 QueryWrapper: Entity 对象封装操作类,不是用lambda语法 1.3 UpdateWrapper: Update…

AVL树模拟

1.概念 虽然二叉搜索树可以缩短查找的效率,但如果数据有序或者接近有序时二叉搜索树树将退化为单支树,查找元素相当于在顺序表中搜索元素,效率低下。AVL 树是具有一下性质的二叉搜索树: 1.它的左右子树都是AVL树 2.左右子…

[Go 微服务] Kratos 使用的简单总结

文章目录 1.Kratos 简介2.传输协议3.日志4.错误处理5.配置管理6.wire 1.Kratos 简介 Kratos并不绑定于特定的基础设施,不限定于某种注册中心,或数据库ORM等,所以您可以十分轻松地将任意库集成进项目里,与Kratos共同运作。 API -&…

《mysql篇》--查询(进阶)

目录 将查询结果作为插入数据 聚合查询 聚合函数 count sum group by子句 having 联合查询 笛卡尔积 多表查询 join..on实现多表查询 内连接 外连接 自连接 子查询 合并查询 将查询结果作为插入数据 Insert into 表2 select * from 表1//将表1的查询数据插入…

【UE 网络】专用服务器和多个客户端加入游戏会话的过程,以及GameMode、PlayerController、Pawn的创建流程

目录 0 引言1 多人游戏会话1.1 Why?为什么要有这个1.2 How?怎么使用? 2 加入游戏会话的流程总结 🙋‍♂️ 作者:海码007📜 专栏:UE虚幻引擎专栏💥 标题:【UE 网络】在网络…

爬坑之 [‘NODE_ENV‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。]

在package.json中配置如下: 执行npm run dev启动 报错: 实际上, NODE_ENVdevelopment webpack-dev-server 这条脚本会合并为两条命令执行, 分别为: NODE_EVNdevelopment webpack-dev-server 这种写法在cmd中是不被支持的 解决…

Bootstrap更改默认的“请在电子邮件地址中包含@”

摘要: 今天开发一个外贸系统,必须全部英文的,但是使用到bootatrp 4的input标签的type"email"输入没有含“”符号时会提示:“请在电子邮件地址中包含”中文提示!一开始以为是中国下载的谷歌是浏览器自带的提示…

计算机网络知识整理笔记

目录 1.对网络协议的分层? 2.TCP/IP和UDP之间的区别? 3.建立TCP连接的三次握手? 4.断开TCP连接的四次挥手? 5.TCP协议如何保证可靠性传输? 6.什么是TCP的拥塞控制? 7.什么是HTTP协议? 8…

停车场智能化管理:车位引导系统实现车位资源优化与数据分析

随着城市汽车保有量的不断增长,停车难问题日益凸显。尤其是在高峰时段,寻找停车位和取车成为了许多车主的头疼问题。为了解决这一难题,维小帮智能车位引导系统应运而生,它利用先进的技术手段,帮助车主快速找到停车位&a…

【计算机图形学】期末考试知识点汇总

文章目录 第一章计算机图形学概述计算机图形学的定义计算机图形学的应用计算机图形学 vs 图像处理 vs模式识别图形显示器的发展及工作原理理解三维渲染管线 第二章 基本图元的扫描转换扫描转换直线的扫描转换DDA算法Bresenham算法中点画线算法圆的扫描转换中点画圆算法反走样 第…

2024steam夏促商店打不开、steam活动加载不了解决方法一览

今年的夏促终于开始了!目前可以看到很多精品小游戏在促销列表内,活动正式开启后还不知道又会是怎样的一幅场景。因为每年夏促都会有不少刚高考完的新手加入,遇到常见的steam商店打不开、活动页面不加载等问题不知道怎么解决。所以这里给大家准备了几种常…

从零创建深度学习张量库,支持gpu并行与自动微分

多年来,我一直在使用 PyTorch 构建和训练深度学习模型。尽管我已经学会了它的语法和规则,但总有一些东西激起了我的好奇心:这些操作内部发生了什么?这一切是如何运作的? 如果你已经到这里,你可能也有同样的…

mybatis的高级映射

mybatis的高级映射(重点) 表与表之间的关系: 一对一关系: 栗子:一个人对应一个身份证号 一对多关系: 栗子:一个用户可以有多个订单 1. 分析需求&…

权限维持-域环境单机版---粘滞键屏保登录

免责声明;本文仅做技术交流与学习,,, 目录 粘滞键: 粘滞键位置: 屏保&登录: 1、WinLogon配合无文件落地上线 结合ps命令: 2、屏幕保护生效后执行后门 粘滞键: Windows维权之粘滞键项维权-腾讯云开发者社区-腾讯云 (tencent.com) 系统自带的辅助功能进行替…

LNBxx21的功能

LNBxx21功能: LNBxx21 家族是为卫星LNB模块供电/连接LNB块与接收机的集成化解决方案。LNBxx21的很多功能可以让LNB电源/接口符合国际标准,此外,模块内还包括一个I2C总线接口,因为集成了一个升压直流-直流控制器,所以可…

MySQL InnoDB支持几种行格式

数据库表的行格式决定了一行数据是如何进行物理存储的,进而影响查询和DML操作的性能。 在InnoDB中,常见的行格式有4种: 1、COMPACT:是MySQL 5.0之前的默认格式,除了保存字段值外,还会利用空值列表保存null…

zabbix-agent2启动失败报错Unit zabbix-agent2.service entered failed state.

文章目录 1,用systemctl status zabbix-agent2查看报错状态2,用journalctl -xe查看一下报错日志3,再看一下zabbix的日志。4,错误修改5, 再次重启zabbix-agent2 1,用systemctl status zabbix-agent2查看报错…

【漏洞复现】Atlassian Confluence RCE(CVE-2023-22527)

产品简介 Atlassian Confluence 是一款由Atlassian开发的企业团队协作和知识管理软件,提供了一个集中化的平台,用于创建、组织和共享团队的文档、知识库、项目计划和协作内容。是面向大型企业和组织的高可用性、可扩展性和高性能版本。 0x02 漏洞概述 …

综合布线实训室建设可行性报告

1、 建设综合布线实训室的目的和意义 1.1 响应国家职业教育政策 在国家对职业教育的高度重视和政策支持下,综合布线实训室的建设不仅是对国家教育方针的积极响应,也是对技术教育改革的有力推动。通过这一平台,我们旨在培育出一批具有强烈实…

全面体验ONLYOFFICE 8.1版本桌面编辑器

ONLYOFFICE官网 在当今的数字化办公环境中,选择合适的文档处理工具对于提升工作效率和团队协作至关重要。ONLYOFFICE 8.1版本桌面编辑器,作为一款集成了多项先进功能的办公软件,为用户提供了全新的办公体验。今天,我们将深入探索…