springboot导入导出

pom.xml添加导入导出依赖

<!-- 导入导出 -->
    <dependency>
      <groupId>org.apache.poi</groupId>
      <artifactId>poi-ooxml</artifactId>
      <version>4.1.2</version>
    </dependency>
    <dependency>
      <groupId>cn.hutool</groupId>
      <artifactId>hutool-all</artifactId>
      <version>5.8.19</version>
    </dependency>

Controller控制层

导入:

@PostMapping("/importExcel")
    public int importExcel(@RequestParam MultipartFile file) throws IOException {
        ExcelReader reader = ExcelUtil.getReader(file.getInputStream());
        List<List<Object>> lists = reader.read();
​
        int count=0;
        for (List<Object> obj:lists) {
            Integer stuId = Integer.valueOf(String.valueOf(obj.get(0)+""));//Integer转String
​
//            BigDecimal price = BigDecimal.valueOf(Long.parseLong(obj.get(3)+""));//BigDecimal转String
//            BigDecimal totalprice = BigDecimal.valueOf(Long.parseLong(obj.get(5)+""));
​
            Student student=new Student(stuId,obj.get(1)+"",obj.get(2)+"",obj.get(3)+"",obj.get(4)+"",obj.get(5)+"");
            count += studentService.addStudent(student);
        }
        return count;
    }

导出:

@GetMapping("/exportExcel")
    public void exportExcel(@RequestParam(required = false,defaultValue = "") Integer stuId,
                            @RequestParam(required = false,defaultValue = "") String stuname,
                            @RequestParam(required = false,defaultValue = "") String gender,
                            @RequestParam(required = false,defaultValue = "") String major,
                            @RequestParam(required = false,defaultValue = "") String classes,
                            @RequestParam(required = false,defaultValue = "") String phoneId,
                            HttpServletRequest request, HttpServletResponse response) throws IOException {
        //Excel写入器
        ExcelWriter writer =  ExcelUtil.getWriter();
​
        //获取所有学生信息
        Student student = new Student();
        student.setStuId(stuId);
        student.setStuname(stuname);
        student.setGender(gender);
        student.setMajor(major);
        student.setClasses(classes);
        student.setPhoneId(phoneId);
//        if(!birthday.equals("")){
//            student.setBirthday(DateUtil.parse(birthday,"yyyy-MM-dd"));
//        }
​
        List<Student> allDitys = studentService.getStudent(student);
​
        //写入
        writer.write(allDitys,true);
​
        //当前响应对象输出流
        ServletOutputStream outputStream = response.getOutputStream();
​
        //设置Http响应的内容为Excel类型
        response.setContentType("application/vnd.ms-excel;charset=utf-8");
        //添加附件
        response.setHeader("Content-Disposition","attachment;filename="+ UUID.randomUUID()+".xls");
​
        //将Excel输出到响应流中
        writer.flush(outputStream,true);
        //关闭
        writer.close();
        IoUtil.close(outputStream);
    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值