JAVA——导出与写入数据

        各位看客上午好,今天给大家带来导出和写入的联合运用操作,以及他的应用场景,在业务中,可能遇到需要大量数据导入数据库的操作,那么这个时候就需要用到导出模板,给用户填写模板,然后导入,但是这时候用户若需要对大量数据进行修改,他又想把数据导出来修改,就需要用到写入的操作:

EasyExcel.write(fileName, PriceExcel.class)
                .sheet("价格主数据")
                .doWrite(() -> {
                    return prices;
                });

上述代码为写入,使用的是easyExcel框架,需要在maven中导入,这里的PriceExce为模版类,prices为需要导出的数据。

public JsonResponse downloadItemExcel(HttpServletResponse httpServletResponse) {
        InputStream inputStream = null;
        try (ServletOutputStream outputStream = httpServletResponse.getOutputStream()) {
            //设置响应头信息,包括下载后的文件名和编码等
            httpServletResponse.addHeader("content-disposition", String.format("attachment;filename= %s", URLEncoder.encode("itemExcel.xlsx", "utf-8")));
            httpServletResponse.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
            httpServletResponse.setCharacterEncoding("UTF-8");
            //在文件夹里获取到文件并转为流
            inputStream = new ClassPathResource("itemExcel.xlsx").getStream();
            byte[] b = inputStream.readAllBytes();
            httpServletResponse.getOutputStream().write(b);
        } catch (Exception e) {
            e.printStackTrace();
            return JsonResponse.error("下载失败");
        } finally {
            if (inputStream != null) {
                try {
                    inputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return JsonResponse.ok();
    }

这个为导出模板的代码,可以直接使用,感谢各位看客老爷观看。希望过客可以帮到你们。

你可能感兴趣的:(java,服务器,开发语言)