首页 > 其他分享 >后台管理系统功能实现

后台管理系统功能实现

时间:2022-11-20 10:46:14浏览次数:80  
标签:文件 功能 调用 里面 管理系统 参数 使用 后台 id

首先是增删改查,前端会传入jason文件(增使用@resquestbody user user 这个注解直接接收参数(就有点像关系映射对象那样jason自己映射到这个对象上面,前提是两个一样哈,然后就可以调用该对象自己的方法那些),然后使用MyBatis完成增加)或者单一参数(根据id删除之类的,前端直接传一个id过来使用/{id}在url里面直接加参数的风格来接受参数,使用@pathvariable(“id” //url里面的参数名字)string id //实参  来接受参数),还有就是@requestparam 注解,他会url里面类似于?pageNum=1&pageSize=10这种直接映射到使用该注解的同名变量上面。

 还有@RestController表示是Controller层并且返回数据以jason格式返回

增加功能实现

 首先是serverce层使用@requestbody user user 注解接收参数,然后是参数传递调用serverce层,serverce层参数传递调用dao层,dao层使MyBatis的注解方式实现sql,sql使用#{参数} 来获取对象的属性值。

 

 

 

 

后台管理系统导入,导出功能实现

 

 

 

 

更新功能实现,也是serverce层接收参数

然后传递参数一直到dao层,dao层使用#{}调用对象参数。

 

 

 

但是这样不能解决当用户更新用户名但是并不想更新秘密但是前端密码传过来为null的情况(无法对数据字段进行判断),于是乎需要使用动态sql(配置mybatisxml文件),注意:配置完要去springboot的yam文件里面指定mapper的xml文件的位置,不然程序找不到

 

 

 

 

 

查询所有数据

 直接select * from table 就行,然后返回的是user对象的集合使用list接收结果,然后将list直接返回给前端。

 

 

 

根据id删除

前端直接传一个id过来使用/{id}在url里面直接加参数的风格来接受参数,使用@pathvariable(“id”)string id来接受参数,然后调用dao层方法把id传过去进行操作。

查询功能实现

 

 

 这是dao层,@param()里面的东西相当于是给传过来的参数起别名,sql用的是注解里面定义的名称。也是使用#{}来获取值。

 

 

 

分页查询功能实现

 

 

 

 

 

 

 

 

 导入导出功能实现

使用hutool这个工具库,很方便

 入门和安装 (hutool.cn)

 

 

导入功能

 

 

导出功能

 

 

 

 

实现用户登录过程

使用login路径实现登录,先进行判断用户名和密码是不是空的,(注意这里参数是使用的新定义的UserDTO对象),然后再去调用serverce层。

 

 

 这里是新定义的UserDTO对象

 

 

 实现查询,这里使用的是MyBatisPlus的QueryWrapper对象(在泛型里面传入数据库要查询的字段)然后使用.eq方法将userDTO的属性传入对应user对象的字段,然后调用getOne方法将querywrapper传进去,如果有结果说明数据库里面有这个用户,不然就没有这个用户。

 

 

 

注册功能实现

为了解决很多接口返回数据类型不一样导致前端工作量太大于是采用了包装类,这种方法,包装类有状态码来让前端确认是否成功,而后端就调用包装类的方法(比如说截图里面的success方法,他会去设置状态码为成功,并且如果要传对象回去也可以调用有data的success方法),Constants接口里面都是自定义状态码表示返回的状态。(截图里面code表示状态码,msg表示错误原因,data是object类表示要返回的数据)

 

 

 

 

 

 

 

 

注册实现

首先也是写路径,然后判度用户名,密码是否为空,然后在进行下一步操作,然后service层得去判断用户名是否存在,不存在就调用save方法(就是新增方法),将用户数据插入进去。

 

 

 

 

 

 

 

 

 

springboot集成MyBatisPlus

https://blog.csdn.net/xqnode/article/details/113079010

 

springboot集成jwt

https://blog.csdn.net/gjtao1130/article/details/111658060

jwt:jason web token 用于用户登录对用户进行身份验证(将用户信息加密到token里面,服务器不需要保存任何用户信息),和session和cookies有点像但是两者最大的区别就是jwt存在客户端和cookies一样,而session在服务器内存里面。缺点:不安全,发布了无法作废。

导入依赖

生成token

拦截器拦截token

注册拦截器

登录Controller

配置全局异常捕获

 

 

 

 

文件上传(比如说头像)

文件上传思路:首先是接收上传的文件然后数据库只存字段,文件是保存在本地磁盘上面的(要先把文件保存到磁盘然后在将文件数据存到数据库里面)。信息怎么获取使用的就是MultipartFile工具类。

FileController

MultipartFile工具类

MultipartFile是SpringMVC提供简化上传操作的工具类。

在不使用框架之前,都是使用原生的HttpServletRequest来接收上传的数据,文件是以二进制流传递到后端的,然后需要我们自己转换为File类。使用了MultipartFile工具类之后,我们对文件上传的操作就简便许多了。

 

 

 @value()注解找到配置文件里面的下载路径。

 

 

 

 

 

 文件上传下载

 

md5查询

 

 

 

 

 

 实体类

 

 mapper接口

 

下载文件的文件路径

 

 

 

整合echarts

 

标签:文件,功能,调用,里面,管理系统,参数,使用,后台,id
From: https://www.cnblogs.com/java-lp-company/p/16886895.html

相关文章

  • 学生选课管理系统
    石家庄铁道大学学生选课管理系统(50分) 1、项目需求:石家庄铁道大学为了提高教务处的工作效率,方便用户之间信息的交流,简化学生选课的流程,使选课管理工作更规范化,系统化,程序......
  • 使用redis实现验证码功能
    redis模拟验证码发送要求:1.输入手机号,点击发送后随即生成6位数字码,2分钟有效​ 2.输入验证码,点击验证,返回成功或者失败​ 3.每个手机号每天只能输入3次分析:​ 验......
  • JAVA仓库管理系统(附源码+调试)
    JAVA仓库管理系统——三只松鼠仓库管理系统功能描述(1)登录模块:登录信息等存储在数据库中(2)基本档案管理模块:供货商管理,销售商管理,货品档案管理,仓库管理(3)采购订货模块:用户可以......
  • Linux与Windows功能的区别
    1.Linux模块化程度高Linux的内核分成进程调度、内存管理、进程间通信、虚拟文件系统和网络接口五大部分;其独特的模块机制可根据用户的需要,实时地将某些模块插入或从内......
  • 门店管理系统开发助你裂变式拓客锁客
     移动互联网的蓬勃发展,智能化设备广泛运用。商业运营模式在新式社交方式的借助下,出现自主创新。去实体、线下推广化发展趋势显著。越来越多线下门店面临互联网化方式构建和......
  • Edge浏览器额外功能
    1.在百度文库没法复制的时候,网址前面添加:read://或http://read://即可进入阅读模式,然后任意复制。2.将Edge浏览器提升为多线程下载时,在网址输入:Edg......
  • Java——Collection集合——Collection集合概述&集合框架介绍&Collection集合常用功能
                                                        ......
  • 篇(13)-Asp.Net Core入门实战-将功能代码增加异步功能Async和配置简单防范CSRF攻击
    入门实战-将功能代码增加异步功能Async和配置简单防范CSRF攻击关于Asp.NetCore的新特性Async,异步,还是需要掌握的,这个特性,按微软官方的说法是可以提高你服务器的负荷,可以......
  • 传奇服务端各文件名字功能
    传奇服务端各文件名字功能一、传奇常见的引擎:GOM单职业or三职业GEE单职业or三职业or合击LEG合击or三职业or复古HERO合击or三职业or复古BLUE合击or三职......
  • WordPress修改后台登录地址
    最近网站总是收到一些国外IP的恶意登录信息,多的时候一天几十次,试验了网上介绍的很多方法,像登录页面后面加参数,又或加验证码,都无法彻底解决这个问题,因为都不是人工访问该页......