layui导入excel表格,java解析数据。

----------------------------------------html-------------------------------------------

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>layui导入excel读取数据</title>
</head>
<body>
<div class="layui-form">
    <div class="layui-form-label" style="width: auto">导入excel操作</div>
    <div class="layui-form-block">
        <input type="file" name="file" class="layui-btn layui-btn-primary" id="excelUpload" multiple="multiple">
    </div>
<!--    <div class="btn-group">-->
<!--        <a href="javascript:void(0)" id="dssubmit" class="btn">开始导入</a>-->
<!--    </div>-->
</div>
</body>
<script type="text/javascript" src="/ajax/libs/jquery/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="/ajax/libs/jquery/jquery.form.js"></script>
<script type="text/javascript" src="/ajax/libs/jquery/jquery.serializejson.js"></script>
<script src="/ajax/libs/layui-v2.5.7/layui.js" type="text/javascript"></script>
<script>
    layui.use('upload', function () {
        var upload = layui.upload;
        //执行实例
        var uploadInst = upload.render({
            elem: '#excelUpload' //绑定元素
            , url: '/Test/excelUpload'//上传接口
            , type: "file"
            , accept: 'file'
            , before: function (obj) {
                //layer.load(); //上传loading
            }
            , done: function (res) {
                //上传完毕回调
                if (res) {

                } else {

                }
            }
            , error: function () {
                //layer.closeAll('loading');
            }
        });
    });
</script>
</html>

------------------------------------------------------------java---------------------------------------------------------------

@Controller
@RequestMapping("/Test")
public class excelUpload {

//    @PostMapping("/excelUpload")
    @RequestMapping(value = "/excelUpload", method = RequestMethod.POST)
    @ResponseBody
    public Object batchUpload(HttpServletRequest request) throws IOException {
        System.out.println("进入");
        //将HttpServletRequest转型为MultipartHttpServletRequest,就能非常方便地得到文件名和文件内容
        MultipartHttpServletRequest multipartHttpRequest=(MultipartHttpServletRequest) request;
//        //文件路径
//        String filePath= PathUtil.getRootPath()+ "uploadFiles/"+"/"+ DateUtil.getDay();
//        System.out.println(filePath);
//        File fileDir = new File(filePath);
//        //不存在这个文件或文件夹时
//        if(!fileDir.exists()){
//            //创建一个文件夹
//            fileDir.mkdirs();
//        }

        //判断是否是文件上传请求/是普通表单还是带文件上传表单。
        if (ServletFileUpload.isMultipartContent(multipartHttpRequest)) {
            //获取上传的文件(.getFiles()方法里的内容需要与input框的name属性值一致)
            List<MultipartFile> list = multipartHttpRequest.getFiles("file");


            //读取Excel文件,将每行数据循环遍历出来。
            for (MultipartFile item : list) {
                // 读取整个Excel
                HSSFWorkbook sheets = new HSSFWorkbook(item.getInputStream());
                // 获取第一个表单Sheet
                HSSFSheet sheetAt = sheets.getSheetAt(0);
                // 循环获取每一行数据
                for (int i = 1; i < sheetAt.getPhysicalNumberOfRows(); i++) {
                    HSSFRow titleRow = sheetAt.getRow(i);
                    if(titleRow.getLastCellNum()<2)continue;
                    //默认第一行为标题行,i = 0

                      //业务代码1:创建一个实体对象用来存放读取的Excel表格数据
//                    Nbgxr nbgxr=new Nbgxr();

                    if (titleRow.getCell(1)!=null){
                        //获取Excel表格数据第2列数据
                        titleRow.getCell(1).toString();

                        //业务代码2:将第2列数据set进实体对象
//                        nbgxr.setName(titleRow.getCell(1).toString());

                        System.out.println(titleRow.getCell(1).toString());
                    }
                    if (titleRow.getCell(3)!=null){
                        //获取Excel表格数据第4列数据
                        titleRow.getCell(3).toString();

                        //业务代码3:将第4列数据set进实体对象
//                        nbgxr.setIdcard(titleRow.getCell(3).toString());

                        System.out.println(titleRow.getCell(3).toString());
                    }

                    //业务代码4:Excel表格数据添加到数据库方法
//                    List<Nbgxr> n=rsds.insert(nbgxr);
                }

            }
        }

        return null;
     }
}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值