栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

轻便内存的导出-EasyExcel

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

轻便内存的导出-EasyExcel

先进入pom


    com.alibaba
    easyexcel
    2.2.6


这个只写导出的导入的方法  实体类需要用到的注解要自己去看哦

导出 


    
    public static void exportExcel(HttpServletResponse response , String fileName , List list,Class clazz)
    {
        if(ParamKey.EXCEL_NAME.list.contains(fileName))throw new baseException("文件名称不能包含特殊符号");
        if (StringUtils.isEmpty(fileName))fileName = new Date().toString();
        String sheetName = fileName;
        // 使用swagger 会有问题,请直接用浏览器或者用postman
        try {
            response.setContentType("application/vnd.ms-excel");
            response.setCharacterEncoding("utf-8");
            //防止中文乱码
            fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\+", "%20");
            response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
            // 这里需要设置不关闭流
            EasyExcel.write(response.getOutputStream(), clazz).autoCloseStream(Boolean.FALSE).sheet(sheetName)
                    .doWrite(list);
        } catch (Exception e)
        {
            throw new baseException("文件下载失败");
        }
    }

导入

public static  List easyReadExcel(Class cls,MultipartFile file)
{
    List list = new ArrayList<>();
    try
    {
        InputStream inputStream = file.getInputStream();
        list = EasyExcel.read(inputStream)
                .head(cls)
                // 设置sheet,默认读取第一个
                .sheet()
                // 设置标题所在行数
                .headRowNumber(2)
                .doReadSync();
    }catch (Exception e)
    {
        e.printStackTrace();
    }
    return list;
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/681892.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号