使用SpringBoot一小时快速搭建一个简单后台管理(增删改查)(超详细教程)

2023-05-16

 最近也是临近期末了,各种的期末大作业,后台管理也是很多地方需要用到的,为了方便大家能快速上手,快速搭建一个简单的后台管理,我花了两天时间整理了一下

我会从0开始介绍,从数据库的设计到前端页面的引入最后到后端代码的编写,你只需要会一点前端的基础和ssm的基础就能快速上手搭建一个简单的后台管理

本次案例分两篇文章教学:

(第一篇):数据表设计,前端框架引入和编写前端页面,搭建基本的springboot项目,引入前端到springboot项目中,在浏览器显示

(第二篇):后端代码的设计,这部分逻辑涉及的比较多,所以单独放一篇出来讲,代码从0手敲讲解,保证你能学会,完成增删改查的功能

各大技术基础教学、实战开发教学(最新更新时间2021-12-4)

目录

前言和环境介绍

数据库

H+前端框架

基本介绍 

H+框架引入

编写后台表格页面

modal弹出框原理

搭建后端

基本介绍

创建SpringBoot项目

基本配置

引入前端

测试项目(测试一下页面是否能显示)

Gitee开源项目地址(本次项目源码)

各大技术基础教学、实战项目开发教学


前言和环境介绍

无论是做app,网站,还是小程序,都少不了后台管理

那么对于前端不是很会,后端也是只会一些的人来说,如何快速搭建一个简单的后台管理系统呢,哎别急,今天就来教大家简单快速搭建一个后台管理系统

首先,简单介绍一下我的开发环境

工具用处
H+前端框架,直观的教程文档,非常实用
SpringBoot后端框架,简单上手,搭建快
MySQL数据库
IDEA非常强大的编译器
Ajax异步请求,前端向后端发送请求
thymeleaf模板引擎,实时渲染页面,基于HTML
HBuild X前端编译器,用其他的也可以,看自己

好了,环境介绍完毕,我们先从前端界面做起

数据库

一个后台管理,肯定少不了数据,不然怎么叫后台管理呢

这里我是用的是MySQL数据库,当然你使用其他的也行,不过后面在SpringBoot中要做不同的配置

在MySQL中新建一个user数据库,新建一个t_user表,字段如下,id,用户名,昵称,密码id记得设置为自增长模式

H+前端框架

基本介绍 

官网地址:H+ 后台主题UI框架 - 主页

H+是一个非常强大的前端开源框架,开箱即用,不需要过多的配置,里面有非常多组件,具体就不一一介绍了,有兴趣的自己去看看

我们要做的是后台管理,所以我们直接找到表格,可以看到有很多样式选择,我们选择一个简单点

这里为了方便快速搭建我选择基本表格,当时你们可以根据自己喜欢来选择



H+框架引入

HBuild X官网下载地址(无需安装,解压即用)

打开HBuild X编译器(你用其他的也可以,没影响)

在左侧空白处新建一个项目(快捷键ctrl+n),选择基于HTML普通项目,添加项目名称,选好路径,点击创建

 一个基本的前端项目就创建好了

 接着,将H+框架的css,js,font等静态资源全部复制项目下



编写后台表格页面

找到H+框架中基本表格的源码,复制代码到index.htm下

再对其进行一点修改,去掉右上角的工具栏,加上增删改查的按钮

修改之后的页面如下,用到了H+框中的表格、表单、按钮、字体图标库,就不详细介绍了,有兴趣可以自己看看前端代码,我们着重讲解js和后端的搭建

同时,我们还需要一个弹出框,当点击添加和修改的时候会弹出一个表单框

我们在H+前端框架的表单中找到弹出框示例,复制代码做点修改

修改后如下:



modal弹出框原理

HTML页面代码比较多,就不放上来了,底部Gitee仓库完整的项目,主要讲解一下上面这个modal弹出框怎么实现的就行

首先,每个modal弹出框都有唯一的标识ID属性,这里我们有两个,一个添加用户,一个修改用户(里面的表单代码我没放出来,比较多,文章底部Gitee仓库我上传了完整开源项目)

<!-- 添加用户的弹出框 -->
<div id="modal-form-add" class="modal fade" aria-hidden="true">

</div>
<!-- 修改用户的弹出框 -->
<div id="modal-form-update" class="modal fade" aria-hidden="true">

</div>

我们为每个修改和删除按钮都添加一个类名标识(这里为什么不用ID,是因为ID只能唯一标识,添加按钮可以用ID,但是修改和删除不能用ID只能用class,因为有多个修改和删除按钮,添加按钮只有一个)

我们在js文件夹下面新建一个myJS文件夹,存放自己编写的js代码,新建一个index.js,添加以下代码

// 监听添加按钮事件(通过id属性监听)
$('#addUserBtn').click(function() {
	// 添加按钮被点击之后,展示modal框
	$('#modal-form-add').modal('show');
})
// 监听修改按钮事件(通过class属性监听)
$('.updateUserBtn').click(function() {
	// 修改按钮被点击之后,展示modal框
	$('#modal-form-update').modal('show');
})

然后再index.html底部引入index.js即可

就可以实现点击添加和修改按钮会弹出modal表单框,简单前端管理页面就搭建完毕了,接下来是后端

搭建后端

基本介绍

SpringBoot是目前非常主流的后端框架,简化新spring应用的初始搭建以及开发过程,搭建快,省去了编写大量配置文件的过程

创建SpringBoot项目

打开IDEA,选择spring Initializr,点击下一步

 添加主包名称,java version版本选择8,点击下一步

在左侧找到这五个依赖,勾选上,点击下一步

添加项目名称(默认为之前填写的主包名称),项目路径自己选择,点击完成

右下角处选择自动导入pom.xml依赖(没有的话直接跳过)

一个基本的SpringBoot项目就创建完毕了



基本配置

在搭建项目之前,先做一些基本的配置,如数据源(连接MySQL)、static静态资源映射(避免被拦截)、设置端口号(避免冲突)等

删除原有的application.properties文件,新建一个application.yml文件(两种都可以,yml文件方便一点),添加以下配置信息

spring:
  # 数据源,连接MySQL数据库
  datasource:
    url: jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true
    username: 数据库用户名
    password: 数据库密码
    driver-class-name: com.mysql.cj.jdbc.Driver
  # JPA配置,打印sql语句
  jpa:
    show-sql: true
    properties:
      hibernate:
        format_sql: true
  # mvc配置,映射html页面
  mvc:
    static-path-pattern: /**
    view:
      prefix: /
      suffix: .html
  # thymeleaf模板引擎配置,设置编码,false取消缓存
  thymeleaf:
    encoding: UTF-8
    cache: false
server:
  # 修改启动端口号
  port: 8081
  # 静态资源映射路径
  web:
    resources:
      static-locations: classpath:/static/

在项目目录下新建一个config包(存在基本配置类),新建一个MyWebMVCConfig类,代码如下

@Configuration
public class MyWebMVCConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        System.out.println("==========静态资源拦截!============");
        //将所有/static/** 访问都映射到classpath:/static/ 目录下
        registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
    }
}


引入前端

把刚刚在HBuildX写好的前端页面引入到IDEA中,首先复制除了html的其他所有文件到static文件夹下

接着复制index.html到templates文件夹下

然后打开index.html,在所有访问静态资源的链接前面加上/static/

测试项目(测试一下浏览器是否能显示页面)

想项目目录下新建一个controller包,新建一个IndexCtroller类,添加以下代码

@RestController
public class IndexController {

    @RequestMapping(value = "/index") // 访问路径
    public ModelAndView toIndex() {
        // 返回templates目录下index.html
        ModelAndView view = new ModelAndView("index");
        return view;
    }
}

 点击启动项目,选哪个都可以,我一般选第二个debug模式启动,方式debug调试

 等待启动完成之后,打开浏览器,输入 localhost:8081/index,页面成功显示

第一篇文章到这里介绍完毕,第二篇正在火速撰写中······

Gitee开源项目地址(本次项目源码)

SpringBoot项目教学合集: CSDN中的所有SpringBoot项目开源,持续更新新项目、新教学文章

各大技术基础教学、实战项目开发教学

各大技术基础教学、实战开发教学(最新更新时间2021-11-28)_Bald programmer的博客-CSDN博客

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用SpringBoot一小时快速搭建一个简单后台管理(增删改查)(超详细教程) 的相关文章

  • mysql下载安装,详细流程

    下载 https dev mysql com 在水平导航栏点击download 点击MySQL Community GPL Downloads 进入后点击MySQL Installer for Windows 下载安装包是32bit的 xf
  • spring5——2.webflux,响应式编程,执行流程及核心API

    什么是响应式编程 在计算机中 xff0c 响应式编程或反应式编程 xff08 英语 xff1a Reactive programming xff09 是一种面向数据流和变化传播的编程范式 这意味着可以在编程语言中很方便地表达静态或动态的数据
  • springboot——测试时bean无法注入的问题

    问题描述 xff1a 当我在test测试类中测试无法注入 64 Dao类时 xff0c 我去main java下测试 xff0c 是否可以使用这个Dao类 xff0c 结果成功调用 于是我定位到这个问题就是测试时无法注入 猜测可能是 64
  • springboot——跨域(nginx,cors)

    跨域访问 xff0c 是指从一个域名的网页去请求另一个域名的资源 比如从www baidu com 页面去请求 www google com 的资源 但是一般情况下不能这么做跨域访问 xff0c 因为有浏览器的 同源策略 存在 xff0c
  • Python 三大神器:pip,virtualenv(virtualenvwrapper),fabric

    pip用来管理包 文档 xff1a https pip pypa io en latest installing html 介绍 xff1a pip 是 Python 包管理工具 xff0c 该工具提供了对Python 包的查找 下载 安装
  • git命令 本地

    目录 基础命令提交分支合并合并 创造线性的提交历史 高级命令分离HEAD相对引用撤销变更 自由移动提交记录 96 git rebase i 96 的使用说明 提交的技巧里程碑的使用 基础命令 提交 提交git commit 提交 包含信息g
  • git命令大全

    文章目录 仓库配置增加 删除文件代码提交分支标签查看信息远程同步撤销其他 仓库 在当前目录新建一个Git代码库 git init 新建一个目录 xff0c 将其初始化为Git代码库 git init project name 下载一个项目和
  • git命令 远程

    文章目录 pull amp push Git仓库克隆远程仓库 96 git clone 96 远程分支从远程仓库获取数据 96 git fetch 96 从远程仓库获取数据 96 git pull 96 上传数据到远程仓库 96 git p
  • 遥感图像场景分类方法总结

    遥感图像场景分类一般假定相同类别的场景应该共享相似的特征信息 xff0c 基于此 xff0c 遥感图像场景分类方法可以分为三大类 xff1a 基于底层视觉特征 xff0c 基于中层视觉表达 xff0c 基于高层视觉信息 底层视觉特征 xff
  • 香橙派如何扩容升级内存?超简单迁移系统到新的SD卡,树莓派也适用

    香橙派扩容迁移系统到新的SD卡 前言迁移系统新系统测试 本文博客地址 xff1a 香橙派迁移系统到新的 SD 卡 前言 刚开始用香橙派的时候 xff0c 用的是一个 16G 的 SD 卡 xff0c 但随着系统上装的软件越来越多 xff0c
  • 博途(TIA)软件安装教程;博途软件安装常见问题解决办法

    博途软件安装教程 xff0c 这里有两位前辈写的非常不错 xff0c 但在具体细节不够充分 xff0c 对于第一次接触此类软件的小伙伴来说不太友好 xff0c 于是在此进行补充 xff0c 并对安装中常见的问题进行一个汇总 建议 安装时主要
  • zabbix 监控源代码安装

    实验环境 192 168 0 108 server端 192 168 0 109 agent端 步骤一 配置两台虚拟机确保ip能连网 配置l两台主机名 vim etc hostname 配置两台主机hosts文件 cat etc hosts
  • exec函数与fork函数的配合使用

    1 实现功能 当父进程检测到输入为1的时候 xff0c 创建子进程把配置文件的字段值 LENG 61 1修改为LENG 61 6 修改掉 代码如下 xff1a 将该修改配置文件通过gcc o 编译生成可执行文件changeData xff0
  • java中的Arrays.sort()的几种用法

    目录 1 第一种2 第二种方法3 第三种方法4 额外补充 for each的语法结构 直奔主题 Arrays sort 有三种用法 1 第一种 Arrays sort int a 查看源码 span class token keyword
  • Maven:导出war包时报错Failed to execute goal org.apache.maven.plugins:maven-war-plugin解决方法(全)

    出现如下问题的时候 是因为在target文件夹下没有生成war文件 Failed to execute goal org apache maven plugins maven war plugin 2 2 war default war o
  • java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)

    目录 前言1 学习路线2 学习方法 前言 这篇文章主要总结我之前所学过的框架以及学习路线 从实打实的零基础到框架再到项目 之后实习工作 也在这篇博客中记录我的学习笔记 以及在笔记中遇到的配置安装 代码bug等错误 都从零开始摸索并且记录了下
  • Java抽象类和接口的详细区别(全)

    目录 前言1 抽象类2 接口3 两者结合4 面试总结 前言 这两者经常在笔试以及面试中经常问及 xff0c 甚至在项目实战中还在纠结用哪一种类型 今天就此问题详细剖析一下 以往我的文章中也有稍微提及 xff1a java框架零基础从入门到精
  • Python 通过ImageDraw.rectangle 画矩形框

    目录 1 函数讲解2 示例代码3 补充cv2 rectangle 1 函数讲解 源代码如下 xff1a ImageDraw rectangle xy fill 61 None outline 61 None width 61 1 主要的参数
  • 基于迁移深度学习的遥感图像场景分类

    前述 根据语义特征对遥感图像场景进行分类是一项具有挑战性的任务 因为遥感图像场景的类内变化较大 xff0c 而类间变化有时却较小 不同的物体会以不同的尺度和方向出现在同一类场景中 xff0c 而同样的物体也可能出现在不同的场景里 理论上 x
  • reStructuredText文档图片表格等自动编号以及名称修改

    number figures 61 True numfig 61 True numfig secnum depth 61 1 numfig format 61 39 figure 39 39 图 s 39 39 code block 39

随机推荐

  • Robocup 2D仿真足球机器人环境搭建(Ubuntu 16.04)

    现在很多高校的学生都在搞RoboCup2D仿真足球机器人 xff0c 而平台的搭建便是一大问题 本人也在搭建环境中遇到各种奇奇怪怪的问题 xff0c 有些找了许多网页 xff0c 下面是我对环境搭建 中遇到的问题以及解决方法的总结 希望能帮
  • Robocup 2D仿真足球机器人环境搭建快速搭建

    虽然之前已经写了Robocup 2D仿真足球机器人环境搭建 xff0c 但是后面我找到了更快搭建环境的方法 而且现在很多团队都是在agent底层代码的基础上编写的 之前的方法配置的环境运行agent球队代码会出现错误 通过找资料得知是有些软
  • Robocup 2D新手导读(入门总结)

    目前 xff0c 我们团队接触Robocup 2D比赛也有好几个月了 xff0c 不得不说 这个比赛也有一定难度 尤其是对于第一次接触这个比赛的我们来 说 下面是我的一些总结 xff0c 希望能够帮助你们 1 Robocup 2D的比赛基本
  • Robocup 2D比赛代码导读(agent底层代码指导)

    相信刚开始接触Robocup 2D比赛的萌新 xff0c 都清楚agent的代码看起来是很痛苦的 xff0c 而且不知道从何看起 我个人观点看代码先看bhv和role这部分的代码 bhv行为动作的类的代码涉及到球员的进攻 跑位 防守 铲球等
  • python爬虫接单-资料总结

    相信看到我这篇文章的朋友们 xff0c 都是奔着赚钱来的 当初我也是冲着爬虫接单 可以赚钱 xff0c 一下就报了个将近3000元的爬虫班 python爬虫确实可以接单赚钱 后来学会了之后就迫不及待地加入了接单行列 也确实赚了一些 希望这篇
  • 爬虫Scrapy框架的介绍与使用

    Scrapy Scrapy介绍 爬取网站数据 xff0c 提取结构数据而编写的爬虫应用框架 Scrapy工作流程图 Scrapy命令 span class token number 1 span 创建Scrapy项目 scrapy star
  • 太难为我了,为了这份P7岗offer,我承受了7轮面试

    前言 今年的大环境非常差 xff0c 互联网企业裁员的现象比往年更严重了 xff0c 可今年刚好是我的第一个 五年计划 截止的时间点 xff0c 说什么也不能够耽搁了 xff0c 所以早早准备的跳槽也在疫情好转之后开始进行了 但是 xff0
  • 云计算与大数据概论第五周

    对于 大数据 xff08 Big data xff09 研究机构Gartner给出了这样的定义 大数据 是需要新处理模式才能具有更强的决策力 洞察发现力和流程优化能力来适应海量 高增长率和多样化的信息资产 麦肯锡全球研究所给出的定义是 xf
  • 【hadoop_读写流程】

    14 hadoop 补充 xff1a 解决 linux 网卡丢失问题 xff1a service NetworkManager stop chkconfig NetworkManager off 重启网络 systemctl restart
  • 半监督学习

    半监督学习 xff1a 在训练阶段结合了大量未标记的数据和少量标签数据 与使用所有标签数据的模型相比 xff0c 使用训练集的训练模型在训练时更为准确 xff0c 而且训练成本更低 如何综合利用已标签例子和未标签例子 xff0c 是半监督学
  • [控制原理基础]浅谈PID算法

    一 PID使用背景 当今的自动控制技术都是基于反馈的概念 即一个In Loop闭环的理论 xff0c 反馈理论的要素包括三个部分 xff1a 测量 比较和执行 测量关心的变量 xff0c 与期望值相比较 xff0c 用这个误差纠正调节控制系
  • 解决Github下载慢的问题!

    从GitHub上下载文件对于国内的我们简直太痛苦了 xff0c 下载了半天稳定在了8kb s 于是我开始寻找解决的方法 xff0c 最开是的方法是去查github com网站的IP xff0c 然后将IP添加到hosts文件里 xff0c
  • [Pix:地面站Mission Planner常见故障和处理方法]

    连接飞控的MP软件以后 xff0c 观察飞行数据界面 xff08 简称HUD xff09 以下为常见错误 xff1a RC not calibrated 未校正遥控器 xff0c 需要校正遥控器Compass not calibrated
  • Pixhawk指示灯的含义

    飞控的指示灯含义 xff1a 红灯与蓝灯交替闪烁 xff1a 系统初始化蓝灯闪烁 xff1a 飞控锁定状态 xff0c GPS正在搜星状态 黄灯连闪两次 xff1a 系统拒绝解锁 xff0c 提示错误 绿灯闪烁 xff1a 飞控锁定状态 x
  • 转载:Pixhawk无人机扩展教程--树莓派安装Dronekit及读取飞控数据

    寻找了一段时间 xff0c 发现Dronekit Python可以实现脱离遥控器来控制无人机 xff0c 找到了一些较好的教程 xff0c 但是中间也踩了一些坑 先转载一下教程 xff0c 遇到的哪些坑以后再写 这里
  • 转载:Pixhawk无人机扩展教程--使用Dronekit编写一个控制程序

    跳转 xff1a 详细教程
  • SQL执行错误#1251.从数据库的响应:

    问题 xff1a 使用 MySQL Font 连接数据库时 xff0c 显示如下错误 xff1a 解决方法 xff1a 使用管理员身份运行命令提示符 xff08 win 43 R 然后输入 cmd xff0c 进入到MySQL的bin目录中
  • 使用 Whisper AI 领先游戏:最佳和免费的语音到文本 AI

    Whisper AI 是一种语音识别和转录软件 xff0c 它使用人工智能 AI 将口头语言转换为书面文本 它旨在通过消除手动转录语音内容的需要来帮助个人和企业节省时间并提高工作效率 在下文中 xff0c 您将学习如何使用 Whisper
  • ROS的卸载与安装【血泪总结!亲测有效】

    前言 xff1a 每一版ROS都有其对应版本的Ubuntu版本 xff0c 切记不可随便装 查看ubuntu版本 xff1a 在命令行输入lsb release a 本文以Ubuntu18 04 xff0c 安装ROS melodic版本为
  • 使用SpringBoot一小时快速搭建一个简单后台管理(增删改查)(超详细教程)

    最近也是临近期末了 xff0c 各种的期末大作业 xff0c 后台管理也是很多地方需要用到的 xff0c 为了方便大家能快速上手 xff0c 快速搭建一个简单的后台管理 xff0c 我花了两天时间整理了一下 我会从0开始介绍 xff0c 从