格姗知识圈博客网站开源了!

news2024/10/26 10:24:18

格姗知识圈博客

一个基于 Spring Boot、Spring Security、Vue3、Element Plus 的前后端分离的博客网站!本项目基本上是小格子一个人开发,由于工作和个人能力原因,部分技术都是边学习边开发,特别是前端(工作中是后端开发),基本上不熟悉,代码质量和设计,请大家多多指教。

码云下载地址(国内推荐):https://gitee.com/geshanzsq/geshanzsq-blog

Github 下载地址:https://github.com/geshanzsq/geshanzsq-blog

博客简介

  • 前端使用 Vue3、Element Plus UI。
  • 后端使用 Spring Boot、Spring Security、Redis、MySQL等技术
  • 后台管理支持加载动态权限菜单,权限修改立即生效,不用再退出重新登录。
  • 博客网站支持第三方登录,如:QQ、Gitee、Github

后台管理功能

  1. 用户管理:用户是整个系统操作人,主要完成系统用户配置
  2. 角色管理:配置角色菜单、分配用户角色等。
  3. 菜单管理:配置系统菜单、按钮权限标识、关联 API 等。
  4. 数据字典:系统中经常使用的一些较为固定的数据进行维护。
  5. API 管理:后端所有接口地址、请求方式等。
  6. 参数配置:系统动态配置常用参数。
  7. 登录日志:系统登录日志记录查询。
  8. 操作日志:系统操作日志记录和查询。
  9. 文章管理:文章编辑、查询等。
  10. 分类管理:分类操作。
  11. 标签管理:标签操作。
  12. 图片管理:图片分类管理、图片上传等。
  13. 友情链接:添加其他网站链接
  14. 评论管理:对文章和留言板的评论进行审核
  15. 第三方登录配置:动态添加第三方登录配置及登录管理
  16. 推荐管理:对文章的推荐进行管理

客户端功能

  1. 首页:网站首页相关文章展示
  2. 分类:展示所有分类及分类下的文章
  3. 标签:展示所有标签及标签下的文章
  4. 归档:历史上已发布的文章,按时间线展示
  5. 关于我:展示网站介绍和个人介绍
  6. 留言板:展示用户留言
  7. 个人中心:用户通过第三方平台登录后,可对个人基本信息修改,查看我的足迹、评论、收藏、点赞

运行

前端:需要搭建 Vue 脚手架环境,如:安装 Node.js、Vue-cli 。

后端:需要搭建 Java 开发环境。此外,还需要安装 MySQL 数据库(推荐 MySQL 8)、Redis。

相关环境版本:
软件名称版本号
Node16.16.0
NPM6.14.15
JDK1.8.0_202
MySQL8.0.29
Redis5.0.9
Nginx1.9.9

项目目录结构说明

geshanzsq-blog-admin: 后台管理模块
	geshanzsq-blog-admin-service: 后台管理应用启动和博客业务
    geshanzsq-blog-admin-system: 后台管理的系统管理模块
    geshanzsq-blog-admin-system-common: 后台管理的系统管理模块通用模块,目前是客户端需要使用的枚举和 PO
geshanzsq-blog-cleint
    geshanzsq-blog-cleint-common: 客户端通用模块,目前是后台管理需要使用的枚举和 PO
    geshanzsq-blog-cleint-service: 客户端相关逻辑和应用启动
geshanzsq-blog-common: 通用模块
    geshanzsq-blog-common-core: 核心通用模块,包含一些通用工具类
    geshanzsq-blog-common-framework: 通用框架模块
    geshanzsq-blog-common-limiter: 通用限流模块
    geshanzsq-blog-common-log: 通用日志模块
    geshanzsq-blog-common-redis: 通用缓存模块
    geshanzsq-blog-common-security: 通用安全框架模块
    geshanzsq-blog-common-swagger: 通用接口文档模块
vue-geshanzsq-blog-admin: 前端后台管理
vue-geshanzsq-blog-client: 前端客户端
前端运行
管理端
# 进入项目目录
cd vue-geshanzsq-blog-admin

# 安装依赖
npm install

# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npm.taobao.org

# 启动服务
npm run serve

浏览器访问 http://localhost:8823

客户端
# 进入项目目录
cd vue-geshanzsq-blog-client

# 安装依赖
npm install

# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npm.taobao.org

# 启动服务
npm run serve

浏览器访问 http://localhost:8824

后端运行

新建数据库 geshanzsq_blog 数据库,导入 doc/sql/geshanzsq_blog.sql 数据库脚本

geshanzsq-blog/geshanzsq-blog-admin/geshanzsq-blog-admin-servicegeshanzsq-blog/geshanzsq-blog-client/geshanzsq-blog-client-service 应用启动模块下,有三个配置文件:

application.ymlapplication-dev.ymlapplication-prod.yml
主要配置文件,配置公共信息开发环境,配置 MySQL 数据库、Redis 缓存、文件路径生产环境,配置 MySQL 数据库、Redis 缓存、文件路径

上述配置完成后,启动后台管理 geshanzsq-blog-admin-service 和 客户端 geshanzsq-blog-client-service 应用

使用

后台管理:http://localhost:8823

客户端:http://localhost:8824

默认用户:admin

默认密码:admin123

后端技术

技术说明官网链接
Spring BootMVC 框架https://spring.io/projects/spring-boot
Spring Security认证和授权安全框架https://spring.io/projects/spring-security
MyBatis PlusORM 框架https://mp.baomidou.com
Knife4j接口文档管理框架https://doc.xiaominfo.com
Redis缓存框架https://redis.io
Lombok对象封装工具https://github.com/projectlombok/lombok
NginxHttp 和反向代理 Web 服务器http://nginx.org
JustAuth第三方登录工具https://www.justauth.cn

前端技术

说明官网
前端框架https://vuejs.org
路由框架https://router.vuejs.org
全局状态管理框架https://vuex.vuejs.org
前端 UI 框架https://element-plus.gitee.io
前端 Http 框架https://github.com/axios/axios
富文本编辑器https://www.wangeditor.com
Markdown 编辑器http://ckang1229.gitee.io/vue-markdown-editor/zh
代码语法高亮插件https://github.com/highlightjs/highlight.js

License

Copyright © 2020-2022 格姗知识圈 Released under the Apache-2.0.

注:如果你使用这个开源项目,请注明本项目来源和说明。

感谢

若依后台管理系统:RuoYi-Vue

效果图

首页

我的足迹

菜单管理.png

数据字典.png

API 管理.png

参数配置.png

文章管理.png

编辑文章.png

编辑文章-2.png

图片管理.png

第三方登录配置.png

推荐管理.png

后台管理接口文档.png

客户端接口文档.png

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

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

相关文章

模型选择拟合

1.通过多项式拟合交互探索概念 import math import numpy as np import torch from torch import nn from d2l import torch as d2l 2.使用三阶多项式来生成训练和测试数据的标签 max_degree 20 # 多项式的最大阶数 n_train, n_test 100, 100 # 训练和测试数据集大小 true…

SQL Server 当前日期及其未来三天的日期

当前日期及其未来三天的日期,并分别以 YYYY-MM-DD 和 yyyyMMdd 的格式展示 1、当前日期及其未来三天的日期,以 YYYY-MM-DD的格式展示 WITH CurrentDate AS (SELECT GETDATE() AS 当前日期 ) -- 使用 CONVERT 函数 SELECTCONVERT(VARCHAR(10), 当前日期,…

【论文笔记】MLSLT: Towards Multilingual Sign Language Translation

🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。 基本信息 标题: MLSLT: Towards Multiling…

springboot医疗物品采购系统-计算机设计毕业源码10210

摘 要 本文基于Spring Boot框架,设计并实现了一个医疗物品采购系统。该系统旨在解决医疗物品采购中的管理和信息化问题,提供便捷的服务和支持。通过系统的设计与实现,实现了医疗物品的供应商家管理、物品类型管理、物品仓库管理、采购计划管…

小渡Ai论文写作:文献综述黑科技LitMaps30s找到所有文献

✨Litmaps 究竟是什么呢? Litmaps 是一款极为强大的文献搜索与追踪工具! 它不但能够助力你找到相关的研究文献,还能够依据你提供的文献生成一张学术地图,清晰地展现文献之间的引用链以及研究发展趋势。 恰似一张璀璨的星空图&a…

Linux中安装配置SQLite3,并实现C语言与SQLite3的交互。

前言 SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是在世界上最广泛部署的 SQL 数据库引擎。本次实验介绍在Linux上实现C语言和SQLite3的交互,利用C语言编写相关语句,连接数据库、操作数…

python实战(三)——文本向量化/文本表示

一、概念 文本向量化是自然语言处理领域的重要环节,也是现在大语言模型开发重要基础。计算机程序无法理解文字信息(实际上非数值类型的信息都无法理解),因此我们需要将文字信息转换成计算机程序可理解的数值类型。通俗来说就是我们…

Python 精品学习资料收藏下载,Python 字符串处理备忘单

重点在这: (请移步图中作者处,获取高清大图下载链接) Python 中的字符串(String)是一种用于表示文本的数据类型。字符串是不可变的,这意味着一旦创建,你不能改变字符串中的字符&am…

【学习AI-相关路程-mnist手写数字分类-python-硬件:jetson orin NX-自我学习AI-基础知识铺垫-遇到问题(1) 】

【学习AI-相关路程-mnist手写数字分类-python-硬件:jetson orin NX-自我学习AI-基础知识铺垫-遇到问题(1) 】 1、前言2、先行了解(1)学习基础知识-了解jetson orin nx 设备(2)学习python&AI…

ClickHouse在百度MEG数据中台的落地和优化

导读 百度MEG上一代大数据产品存在平台分散、质量不均和易用性差等问题,导致开发效率低下、学习成本高,业务需求响应迟缓。为了解决这些问题,百度MEG内部开发了图灵3.0生态系统,包括Turing Data Engine(TDE)计算引擎、Turing Dat…

从0到1,搭建vue3项目

一 Vite创建Vue3项目 1.1.创建Vue3项目 1.1.1.运行创建项目命令 # 使用 npm npm create vitelatest 1.1.2、填写项目名称 1.1.3、选择前端框架 1.1.4、选择语法类型 1.1.5、按提示运行代码 1.1.6浏览器问 localhost:5173 预览 1.2项目结构 1.2.1vite.config.ts 1.2.2 pac…

基于线性回归(Linear Regression)的房屋价格预测

基于线性回归(Linear Regression)的房屋价格预测 一元线性回归加载数据假设函数损失函数(代价函数)梯度下降函数完整代码 多变量线性回归加载数据集特征缩放假设函数损失函数梯度下降函数算法步骤完整代码 线性回归是统计学中的一…

【二轮征稿启动】第三届环境工程与可持续能源国际会议持续收录优质稿件

第三届环境工程与与可持续能源国际会议(EESE 2024)由中南林业科技大学主办,湖南农业大学协办,将于2024年12月20日-22日在湖南长沙召开。 大会邀请到国家杰出青年科学基金获得者、华中科技大学能源与动力工程学院冯光教授&#xf…

R实验——logistic回归、LDA、QDAKNN

数据集介绍: mpg,miles per gallon即油耗,这个数据集来自卡内基梅隆大学维护的StatLib库。1983年美国统计协会博览会使用了该数据集。这个数据集是对StatLib库中提供的数据集稍加修改的版本。根据Ross Quinlan(1993)在预测属性“mpg”中的使…

计算机网络原理总结C-网络层

网络层 网络层提供的两种服务网际协议IP 虚拟互连网络IP地址子网掩码(无分类编址CIDR)IP地址和MAC地址IP数据报格式(路由)转发分组的流程 因特网的路由选择协议(动态路由协议) 网际控制报文协议ICMPIP多播…

认识CSS语法

CSS(网页美容) 重点:选择器、盒子模型、浮动、定位、动画,伸缩布局 Css的作用: 美化网页:CSS控制标签的样式 网页布局:CSS控制标签的位置 概念:层叠样式表(级联样式表…

UE5 第一人称示例代码阅读0 UEnhancedInputComponent

UEnhancedInputComponent使用流程 我的总结示例分析firstthenand thenfinally&代码关于键盘输入XYZ 我的总结 这个东西是一个对输入进行控制的系统,看了一下第一人称例子里,算是看明白了,但是感觉这东西使用起来有点绕,特此梳…

布隆过滤器:极简存储,高效检索

引言 在海量数据的存储与检索中,如何在保持快速检索的同时,降低内存占用是个巨大的挑战。有没有一种既能快速检索又能节省内存的方案?布隆过滤器(Bloom Filter)就是这样一种数据结构。 布隆过滤器的基本原理 如果我…

数据库、数据仓库、数据湖和数据中台有什么区别

很多企业在面对数据存储和管理时不知道如何选择合适的方式,数据库、数据仓库、数据湖和数据中台,这些方式都是什么?有什么样的区别?企业根据其业务类型该选择哪一种?本文就针对这些问题,来探讨下这些方式都…

【目标检测01】真实框、预测框、锚框和交并比IoU

文章目录 1. 任务定义2. 基本概念2.1 边界框(bounding box)2.2 真实框、预测框和锚框2.3 交并比 (IoU)2.4 代码实现 1. 任务定义 目标检测的主要目的是让计算机可以自动识别图片或者视频帧中所有目标的类别,并在该目标周围绘制边界框&#x…