SpringBoot + Mybatis Plus 实现的瀑布内容管理系统、CMS建站系统

news2025/1/12 0:52:49

瀑布内容管理系统

瀑布内容管理系统,采用SpringBoot + Apache Shiro + Mybatis Plus + Thymeleaf 实现的内容管理系统(附带权限管理),是搭建博客、网站的不二之选。

项目介绍

PB-CMS,致力于开发最精简、实用的CMS管理系统,适合搭建博客、企业网站等,完美自适应。

满足您的强迫症(包括我自己的强迫症[手动狗头])

后台测试账号 账号:guest 密码:123456

如果喜欢,多多分享!!多多Star!!有你的支持,是我更新的最大动力!感谢~

安装

  1. 将本项目源码导入本地开发工具(如 IntelliJ IDEA ),本地开发工具需要安装 lombok 插件
  2. 安装Mysql数据库:Mysql版本最低支持5.7,新建 database CREATE DATABASE pb_cms_base;
  3. 初始化数据库:找到项目数据库文件:docs/db/pb_cms_base.sql,执行 pb_cms_base.sql
  4. 安装RedisRedis最低版本支持 3.2
  5. 修改(resources/application.yml)配置文件
    1. 修改数据库链接相关连接串、用户名和密码(可搜索datasource)
    2. redis配置(可搜索redis)
  6. 运行项目(三种方式)
    1. 项目根目录下执行mvn -X clean package -Dmaven.test.skip=true编译打包,然后执行java -jar pb-cms/target/pb-cms.jar
    2. 项目根目录下执行mvn springboot:run
    3. 直接运行SpringbootApplication.java
  7. 前台首页,浏览器访问http://localhost:8080
  8. 后台首页,浏览器访问http://localhost:8080/admin使用账号密码admin,123456登录系统后台。

使用

文件上传

文件上传目前支持三种方式:七牛云、腾讯云和本地存储。

可以在后台管理 -> 上传管理 -> 云存储配置页面进行文件上传相关配置

小提示:如果使用本地存储,则需要在项目的配置文件中,配置文件上传目录file.upload-folder 和 文件访问前缀地址file.access-prefix-url

静态化

网站启用静态化步骤:

  1. 在yml配置文件中,配置好静态页面文件生成的文件夹路径
  2. 启动项目,进入后台->网站管理->基础信息,切换到开启“静态化”,点击保存

代码结构

├── main
│   ├── java
│   │   └── com
│   │       └── puboot
│   │           ├── SpringbootApplication.java 项目启动类
│   │           ├── common    公共资源,如注解、切面、shiro集成、通用工具类等
│   │           ├── component 项目公共组件
│   │           ├── enums     枚举类
│   │           ├── exception 全局异常处理
│   │           └── module
│   │               └── admin 后台模块
│   │               └── blog  前端模块
│   └── resources
│       ├── application-dev.yml 开发环境配置文件
│       ├── application-prd.yml 生产环境配置文件
│       ├── application.yml     通用配置文件
│       ├── logback-spring.xml  日志配置文件
│       ├── mapper              Mybatis XML文件
│       ├── static
│       │   ├── admin           后台css、js、插件、图片
│       │   ├── css             项目前后台通用css文件
│       │   ├── favicon.ico     项目前后台通用css文件
│       │   ├── img             项目前后台通用图片文件
│       │   ├── js              项目前后台通用js文件
│       │   ├── libs            项目前后台通用类库
│       │   └── theme           主题相关资源
│       │       └── pb
│       └── templates           项目页面目录
│           ├── admin           后台页面目录
│           │   ├── article     文章管理
│           │   ├── category    分类管理
│           │   ├── comment     评论管理
│           │   ├── database    数据库监控
│           │   ├── fragments   通用页面
│           │   ├── index       后台首页
│           │   ├── link        友链管理
│           │   ├── onlineUsers 在线用户
│           │   ├── permission  权限管理
│           │   ├── role        角色管理
│           │   ├── site        站点管理
│           │   ├── tag         标签管理
│           │   ├── theme       主题管理
│           │   ├── upload      上传管理
│           │   └── user        用户管理
│           ├── error
│           │   ├── 403.html
│           │   ├── 404.html
│           │   ├── 4xx.html
│           │   ├── 500.html
│           │   └── 5xx.html
│           ├── home
│           │   └── fragments  前端通用页面
│           ├── system
│           │   ├── kickout.html  踢出页面
│           │   ├── login.html    登录页面
│           │   └── register.html 注册页面
│           └── theme             主题目录
│               └── pblog         默认主题
└── test
    └── java
        └── com
            └── puboot
                ├── SpringbootApplicationTests.java 单元测试


项目展示

前台页面

在这里插入图片描述

在这里插入图片描述

后台页面

在这里插入图片描述

在这里插入图片描述

完整代码下载地址:SpringBoot + Mybatis Plus 实现的瀑布内容管理系统、CMS建站系统

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

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

相关文章

chatgpt赋能python:Python如何访问手机:探索移动端SEO优化的新途径

Python如何访问手机:探索移动端SEO优化的新途径 随着移动互联网的快速发展,移动端成为了各大搜索引擎的竞争焦点。对于SEO优化工程师而言,探索移动端SEO优化的新途径显得尤为关键。而Python作为一种强大的编程语言,在移动端SEO优…

MM32F3273G8P火龙果开发板MindSDK开发教程21 - PWM的使用

MM32F3273G8P火龙果开发板MindSDK开发教程21 - PWM的使用 1、简述 开发版的LED灯连接PA1脚,而PA1可以映射TIM2_CH2,所以我们用通用定时器2的TIM2_CH2输出PWM到PA1脚,通过更改PWM的占空比,来改变LED的亮度。 2、LED灯的初始化…

读数据压缩入门笔记06_上下文转换

1. 压缩算法可归为两类 1.1. 统计压缩(即VLC) 1.2. 字典压缩(如LZ78) 1.3. 从不同的角度利用了给定数据流中存在的统计冗余信息 2. 上下文变换 2.1. contextual transform 2.2. 给定一组相邻的符号集,对它们进行…

代码审计——任意文件下载详解

为方便您的阅读,可点击下方蓝色字体,进行跳转↓↓↓ 01 漏洞描述02 审计要点03 漏洞特征04 漏洞案例05 修复方案 01 漏洞描述 网站可能提供文件查看或下载的功能,如果对用户查看或下载的文件不做限制,就能够查看或下载任意的文件&…

大数据相关概念了解

Hadoop生态及Hive、HBase、Impala、HDFS之间的关系 Hadoop生态(什么是 Hadoop) Apache Hadoop软件库是一个框架,允许使用简单的编程模型在计算机集群之间对大型数据集进行分布式处理。它旨在从单个服务器扩展到数千台计算机,每台计算机都提供本地计算和…

【雕爷学编程】Arduino动手做(112)---2.4G24L01无线模块

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&am…

chatgpt赋能python:Python怎么调整黑色的SEO?

Python怎么调整黑色的SEO? 在当今互联网的大环境下,各种搜索引擎的存在具有巨大的价值,特别是Google,百度等常用搜索引擎的SEO排名对于企业、个人品牌的宣传有着极其重要的意义。但是,如果出现黑色SEO的情况&#xff…

Spark操作HBase的数据,实现列值的计算

本文将介绍如何使用Spark操作HBase的数据,实现列之间的计算,以特征值计算为例。特征值是指从原始数据中提取出来的具有代表性或判别性的数值,可以用于数据分析或机器学习等领域。本文将使用hbase-spark连接器,通过Spark RDD的方式…

深度解析:圣湘生物的数字化转型升级之路(附方案详情)

随着“互联网”医疗技术在医疗行业的应用不断深化,数字化正在加速推进IVD行业的创新。 当前,IVD企业应对机遇和挑战的核心是提升竞争力。 IVD企业基于企业资源,提升综合竞争力主要分【硬实力】和【软实力】。 一方面:需要企业不…

跟李沐学AI;Meta可能让其开源AI模型商业化,让开发者赚钱

🦉 AI新闻 🚀 Meta可能让其开源AI模型商业化,让开发者赚钱 摘要:Meta正考虑将其开源大语言模型(LLM)的下一个版本用于商业用途,这可以为聊天机器人等提供支持。此举可能会让更多开发者使用替代…

张量分解(Cp、Tuker、Block-Term)

张量 张量是向量或矩阵在维度空间上的高阶扩展。 一个 ( p , q ) (p,q) (p,q)型的张量 T T T被定义为一个多重线性映射。 T : V ∗ ⋯ V ∗ V ⋯ V ↦ R , T:V^* \times \dots \times V^* \times V \times \dots \times V \mapsto \R, T:V∗⋯V∗V⋯V↦R, 其中 V V V 是…

用GPT4写2023高考语文作文,新课标I卷,Ⅱ卷

文章目录 新课标Ⅰ卷新课标Ⅱ卷总结 每年的高考语文题目都会是热议的话题,今年同样也不例外。但是今年讨论的话题除了作文题目本身之外,对于chatgpt写出的作文会是什么样子的也​让广大网友同样期待 新课标Ⅰ卷 好的故事,可以帮我们更好地表达…

chatgpt赋能python:Python怎么让结果同行输出

Python怎么让结果同行输出 在Python编程中,我们经常需要打印出一系列的结果并在同一行输出。这对于输出更为整洁的结果和提高代码清晰度都是非常有帮助的。下面就让我们来介绍一些实现这一功能的方法。 方法一:使用 end 参数 在Python的 print() 函数…

机器视觉_HALCON_模板匹配_1.CreateScaledShapeModel

文章目录 一、前言二、create_scaled_shape_model 算子2.1 名称2.2 算子签名2.3 描述2.3.1 输入参数详述2.3.2 完整的预生成模型 2.4 执行信息2.5 参数2.6 执行结果2.7 可能的前驱算子2.8 可能的后继算子2.9 替代选择 一、前言 在HALCON算子手册中,对算子的介绍通常…

chatgpt赋能python:Python访问数据库

Python访问数据库 Python是一种高级编程语言,在数据分析、科学计算和Web开发等领域都有广泛的应用。Python还有一个很强的优势就是它能够方便地访问数据库。在本文中,我们将介绍Python如何与数据库交互以及Python数据库API的使用。 Python的数据库API …

chatgpt赋能python:Python如何访问数组中的元素

Python如何访问数组中的元素 Python是一种高级编程语言,访问数组中的元素也非常简单。 它提供了一种简单而灵活的方式访问数组中的元素,这使得在Python中使用数组变得非常容易。在本文中,我们将介绍如何在Python中访问数组中的元素以及如何使…

DecimalFormat基本用法

1.保留两位小数(截断) 下面展示一些 内联代码片。 double num 11.256;DecimalFormat df new DecimalFormat("#.##");//指定RoundingModedf.setRoundingMode(RoundingMode.DOWN);String str df.format(num);double formatNum Double.parseDouble(str)…

2023年05月份青少年软件编程Scratch试卷三级真题

2023-05 Scratch三级真题 分数:100 题数:38 测试时长:60min 一、单选题(共25题,共50分) 1. 关于变量,下列描述错误的是?(A)(2分) (变量那一栏…

对于ChatGPT,马化腾、马斯克等科技大佬竟然这么说!

ChatGPT一夜爆火之后,国内几乎是各大互联网公司都在摩拳擦掌,跃跃欲试,从百度的文心一言,到阿里的通义千问,还有360的智脑,讯飞的星火,语言大模型如雨后春笋一般涌出,犹如2014年新能…

代码审计——未授权访问详解

为方便您的阅读,可点击下方蓝色字体,进行跳转↓↓↓ 01 漏洞描述02 审计要点03 漏洞特征04 漏洞案例05 修复方案 01 漏洞描述 未授权访问漏洞,是在攻击者没有获取到登录权限或未授权的情况下,或者不需要输入密码,即可通…