多表的删除和导入Excel表格数据 详细介绍

多表的删除和导入Excel表格数据

开发工具与关键技术:MVC
撰写时间:2019.05.06

一、多表删除
A) 单条数据删除
(以学生表为列)给删除自定义一个方法名,删除数据是根据主键来进行删除的,所以要传进来学生信息是根据学生ID来进行删除的,绑定点击事件,把学生ID传到点击方法里去。当你点击某一条数据的删除按钮的时候会弹出一个提示框
在这里插入图片描述 一个询问的提示框,用的是:layer.confirm(“”)
在点击确定按钮的时候,要执行请求一下删除路径,在控制器写一个方法(用来删除表数据的)把主键ID传进去
在这里插入图片描述
然后再到控制器写方法,在控制器中要写接收ID的参数(int 类型)。根据学生ID查询需要删除的学生信息,然后再用Remove把要删除的学生信息移除;获取现在删除的学生表里面的学生信息的用户ID,根据用户ID查询需要删除的用户角色明细表信息
在这里插入图片描述

B)批量删除
获取选中行数据,split()方法用于把一个字符串分割成字符串数组
在这里插入图片描述
在控制器中写批量删除的方法,接收传过来的字符串参数(string类型),要对传过来的字符串进行分割,判断传过来的字符串是否为空,对拼接好的id进行分割,把每一次传过来的值都符给学生id,要先将string类型的数据转化为int类型,获取删除的学生的用户ID 如果用int类型报错和话可以转成 int?说明数据可以为空,查询出用户角色明细表信息,然后进行逐步删除,再保存数据,成功或失败 自加一(++),把数据返回到页面就行了
在这里插入图片描述

二、导入Excel表格数据
1.点击导入考生按钮弹出“导入考生Excel数据”模态框
2.有下载导入模板按钮和导入数据库按钮 功能
3.在视图设置“初始化导入数据临时表”
A)打开模态框,完成下载功能
打开导入模态框:写上点击事件,重置表单,禁用保存到数据库的按钮也就是设置(disabled 为 true),清空临时表,设置一个点击背景时不关闭模态框或者按下esc时不关闭动态模态框,最后弹出模态框
在这里插入图片描述
下载模板:获取模板路径,通过路径获取到模板,按照路径先创建一个文件夹,然后判断模板是否存在于项目里,把获取到的模板路径放进去
在这里插入图片描述
B)上传Excel表格,保存到临时表
首先判断是否有选中文件,要避免选择文件时点击了取消还要上传的操作,所以要判断这个表单的内容是否等于空或者为undefined 说明我没有选择文件,就直接return一个返回。否则就执行下面的操作,提交表单,需要要控制器写一下方法
在这里插入图片描述
控制器:首先要将导入的Excel表格的数据保存到session中,先声明一个new的ReturnJsonVo ,接着把后面的操作到要放到try里面,接下来思路:

  1. 获取读取的文件(获取页面上的Excel表格传到控制器)
  2. 把文件转换为二进制数组
  3. 二进制数组转成内存流
  4. 利用NPOI把内存流中的数据读取成Excel
    NPOI就是保证你在没有安装office的时候,去读取word文档或者Excel文件
    5.将内存流转化为工作簿
    6.还要把session中的ImportExcel移除 避免残留以前的数据
    接着判断页面传过来的文件是否为Excel表格,获取文件的后缀。还要判断工作簿中是否有工作表,再导入学生信息,
    在这里插入图片描述
    FirstCellNum:获取某行第一个单元格下标
    LastCellNum:获取某行的列数
    FirstRowNum:获取第一个实际行的下标
    LastRowNum:获取最后一个实际行的下标
    内容要和数据库已有的数据对应,比如学院里只有通信,这样的话你就不能编打其他的了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值