J-Excel

万能Excel导入导出工具
授权协议 Apache
开发语言 Java
所属分类 应用工具、 个人助理软件
软件类型 开源软件
地区 国产
投 递 者 江飞白
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

J-Excel 是万能的 Excel 导入导出工具:

  • 支持从List<Map>中导出

  • 支持从List<POJO>中导入导出

  • 支持从List<POJO里面还有List<POJO>>中导入导出

  • 支持导出类似课程表结构类型纵表

  • 支持国际化

  • 不写一个配置文件!


    示例请参照:

public class TestExcel {
static {
    SimpleConfigurator.addConfigurator(new DbConfig("jdbc:mysql://localhost/digitalcampus?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8&autoReconnect=true", DbConfig.DEFAULT_CONFIG_NAME));
}
/**
 * 从List<Map>中导出
 * @param workbook
 * @throws Exception
 */
public static void testSimpleMapExport(Workbook workbook) throws Exception {
    Hyberbin hyberbin = new Hyberbin();
    List<Map> list = hyberbin.getMapList("select * from dc_xxkc");
    Sheet sheet = workbook.createSheet("testSimpleMapExport");
    List<String> cols = new ArrayList<String>();
    List<FieldColumn> fieldColumns = hyberbin.getFieldColumns();
    for (FieldColumn column : fieldColumns) {
        cols.add(column.getColumn());
    }
    SimpleExportService service = new SimpleExportService(sheet, list, (String[]) cols.toArray(new String[]{}), "学校课程");
    service.setDic("KCLX", "KCLX").addDic("KCLX", "1", "国家课程").addDic("KCLX", "2", "学校课程");//设置数据字典
    service.doExport();
}
/**
 * 从List<Vo>中导出
 * @param workbook
 * @throws Exception
 */
public static void testSimpleVoExport(Workbook workbook) throws Exception {
    Hyberbin<SchoolCourse> hyberbin = new Hyberbin(new SchoolCourse());
    List<SchoolCourse> list = hyberbin.showAll();
    Sheet sheet = workbook.createSheet("testSimpleVoExport");
    //ExportExcelService service = new ExportExcelService(list, sheet, "学校课程");
    ExportExcelService service = new ExportExcelService(list, sheet, new String[]{"id", "courseName", "type"}, "学校课程");
    service.addDic("KCLX", "1", "国家课程").addDic("KCLX", "2", "学校课程");//设置数据字典
    service.doExport();
}
/**
 * 从List<Vo>,vo中还有简单循环节中导出
 * @param workbook
 * @throws Exception
 */
public static void testVoHasListExport(Workbook workbook) throws Exception {
    Hyberbin<SchoolCourse> hyberbin = new Hyberbin(new SchoolCourse());
    List<SchoolCourse> list = hyberbin.showAll();
    List<String> strings = new ArrayList<String>();
    for (int i = 0; i < 10; i++) {
        strings.add("我是第" + i + "个循环字段");
    }
    for (SchoolCourse course : list) {
        course.setBaseArray(strings);
    }
    Sheet sheet = workbook.createSheet("testVoHasListExport");
    ExportExcelService service = new ExportExcelService(list, sheet, new String[]{"id", "courseName", "type", "baseArray"}, "学校课程");
    service.addDic("KCLX", "1", "国家课程").addDic("KCLX", "2", "学校课程");//设置数据字典
    service.setGroupConfig("baseArray", new GroupConfig(10) {
        @Override
        public String getLangName(int innerIndex, int index) {
            return "我是第" + index + "个循环字段";
        }
    });
    service.doExport();
    service.exportTemplate();//生成下拉框
}
/**
 * 从List<Vo>,vo中还有复杂循环节中导出
 * @param workbook
 * @throws Exception
 */
public static void testVoHasListVoExport(Workbook workbook) throws Exception {
    Hyberbin<SchoolCourse> hyberbin = new Hyberbin(new SchoolCourse());
    List<SchoolCourse> list = hyberbin.showAll();
    for (SchoolCourse course : list) {
        List<InnerVo> innerVos = new ArrayList<InnerVo>();
        for (int i = 0; i < 10; i++) {
            innerVos.add(new InnerVo("key1", "value1"));
        }
        course.setInnerVoArray(innerVos);
    }
    Sheet sheet = workbook.createSheet("testVoHasListVoExport");
    ExportExcelService service = new ExportExcelService(list, sheet, new String[]{"id", "courseName", "type", "innerVoArray"}, "学校课程");
    service.addDic("KCLX", "1", "国家课程").addDic("KCLX", "2", "学校课程");//设置数据字典
    for (int i = 0; i < 10; i++) {
        service.addTook("hiddenvalue", "key", i, "something");
    }
    service.setGroupConfig("innerVoArray", new GroupConfig(2, 10) {
        @Override
        public String getLangName(int innerIndex, int index) {
            return "我是第" + index + "个循环字段,第" + innerIndex + "个属性";
        }
    });
    service.doExport();
}
/**
 * 导出一个纵表(课程表之类的)
 * @param workbook
 * @throws Exception
 */
public static void testTableExport(Workbook workbook) throws Exception {
    Sheet sheet = workbook.createSheet("testTableExport");
    TableBean tableBean = new TableBean(3, 3);
    Collection<CellBean> cellBeans = new HashSet<CellBean>();
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            CellBean cellBean = new CellBean(i * 3 + j + "", i, j);
            cellBeans.add(cellBean);
        }
    }
    tableBean.setCellBeans(cellBeans);
    ExportTableService tableService = new ExportTableService(sheet, tableBean);
    tableService.doExport();
}
/**
 * 从List<Vo>中入
 * @param workbook
 * @throws Exception
 */
public static void testSimpleVoImport(Workbook workbook) throws Exception {
    Sheet sheet = workbook.getSheet("testSimpleVoExport");
    ImportExcelService service = new ImportExcelService(SchoolCourse.class, sheet);
    service.addDic("KCLX", "1", "国家课程").addDic("KCLX", "2", "学校课程");//设置数据字典
    List list = service.doImport();
    System.out.println("成功导入:" + list.size() + "条数据");
}
/**
 * 从List<Vo>,vo中还有简单循环节中导入
 * @param workbook
 * @throws Exception
 */
public static void testVoHasListImport(Workbook workbook) throws Exception {
    Sheet sheet = workbook.getSheet("testVoHasListExport");
    ImportExcelService service = new ImportExcelService(SchoolCourse.class, sheet);
    service.addDic("KCLX", "1", "国家课程").addDic("KCLX", "2", "学校课程");//设置数据字典
    List list = service.doImport();
    System.out.println("成功导入:" + list.size() + "条数据");
}
/**
 * 从List<Vo>,vo中还有复杂循环节中导入
 * @param workbook
 * @throws Exception
 */
public static void testVoHasListVoImport(Workbook workbook) throws Exception {
    Sheet sheet = workbook.getSheet("testVoHasListVoExport");
    ImportExcelService service = new ImportExcelService(SchoolCourse.class, sheet);
    service.addDic("KCLX", "1", "国家课程").addDic("KCLX", "2", "学校课程");//设置数据字典
    List list = service.doImport();
    System.out.println("成功导入:" + list.size() + "条数据");
}
public static void main(String[] args) throws Exception {
    Workbook workbook = new HSSFWorkbook();
    testSimpleMapExport(workbook);
    testSimpleVoExport(workbook);
    testVoHasListExport(workbook);
    testVoHasListVoExport(workbook);
    testTableExport(workbook);
    testSimpleVoImport(workbook);
    testVoHasListImport(workbook);
    testVoHasListVoImport(workbook);
    workbook.write(new FileOutputStream("D:\\excel.xls"));
}
}


  • git的地址: https://github.com/hyberbin/J-Excel 代码: public static void main(String[] args) throws FileNotFoundException, IOException, JSONException { Workbook workbook = new HSSFWorkbook( new File

  •        这段时间,或多或多的遇到一些JAVA输出EXcel的问题.JExecl使用起来比较简单,而且能解决项目中的大部分需求,所以我找了一些资料,总结如下.         简介:在开源世界中,有两套比较有影响的api可供使用,一个是poi,一个是jexcelapi。其中jexcelapi是一个韩国程序员的作品,虽然没有poi那样血统高贵,但是在笔者的使用过程中,感觉简单方便,对中文支持非常

  • 三剑客:JXL、POI、EasyExcel JXL POI EasyExcel JXL 读写Excel # 写入 WritableWorkbook cw = Workbook.createWorkbook(new File("E:\\test\\test02.xls")); WritableSheet sheet1 = cw.createSheet("第一页", 0); for (int i =

  • 文章目录 前言 springboot 整合 easy-excel pom.xml application.yml 实现 easy-excel 导入、导出实现 导入监听 导出模拟监听 Controller 层 service 层 mapper 层 mapper.xml 结语 前言 上个月公司有个老系统反馈,导入导出数据量一大就出现卡顿,半天不响应。刚来领导要求我改造一下,在 gitee 和 度娘搜索

  • 订阅 Python全栈白宝书-零基础入门篇 可报销!白嫖入口-请点击我。推荐他人订阅,可获取扣除平台费用后的35%收益,文末名片加V! 说明:该文属于 Python全栈白宝书专栏,免费阶段订阅数量4300+,购买任意白宝书体系化专栏可加入TFS-CLUB 私域社区。 福利:加入社区的小伙伴们,除了可以获取博主所有付费专栏的阅读权限之外,还有机会加入 星荐官共赢计划 ࿰

  • 一.Excel数据的读取 1.java代码 package com.immo.framework.utils; import java.io.FileInputStream; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import org.easy.excel.ExcelCont

  • 订阅 Python全栈白宝书-零基础入门篇 可报销!白嫖入口-请点击我。推荐他人订阅,可获取扣除平台费用后的35%收益,文末名片加V! 说明:该文属于 Python全栈白宝书专栏,免费阶段订阅数量4300+,购买任意白宝书体系化专栏可加入TFS-CLUB 私域社区。 福利:加入社区的小伙伴们,除了可以获取博主所有付费专栏的阅读权限之外,还有机会加入 星荐官共赢计划 ࿰

  • 题目描述 Excel工作表中对选定区域的数值进行统计的功能非常实用。 仿照Excel的这个功能,请对给定表格中选中区域中的单元格进行求和统计,并输出统计结果。 为简化计算,假设当前输入中每个单元格内容仅为数字或公式两种。 如果为数字,则是一个非负整数,形如3、77 如果为公式,则固定以=开头,且仅包含下面三种情况: 等于某单元格的值,例如=B12 两个单元格的双目运算(仅为+或-),形如=C1-C

  • 一、excel-export模块 官方介绍:https://www.npmjs.com/package/excel-export 二、nodejs //导出所有用户信息到excel app.post('/exportExcel', function (req, res) { //创建一个写入格式map,其中cols(表头),rows(每一行的数据); let conf = {};

  • 订阅 Python全栈白宝书-零基础入门篇 可报销!白嫖入口-请点击我。推荐他人订阅,可获取扣除平台费用后的35%收益,文末名片加V! 说明:该文属于 Python全栈白宝书专栏,免费阶段订阅数量4300+,购买任意白宝书体系化专栏可加入TFS-CLUB 私域社区。 福利:加入社区的小伙伴们,除了可以获取博主所有付费专栏的阅读权限之外,还有机会加入 星荐官共赢计划 ࿰

  • 系统:Windows 7 语言版本:Anaconda3-4.3.0.1-Windows-x86_64 编辑器:pycharm-community-2016.3.2 openpyxl:2.6.2这个系列讲讲Python对Excel的操作 使用openpyxl模块 今天讲讲对某行某列进行遍历 Part 1:示例对Excel的行或列进行遍历 Excel中信息 Part 2:代码import os fro

  • 本次给大家分享一个我们在数学建模中用到的各种方法 用一下的方式,就可以遍历出文件夹下所有的excel所有的一列数据的所有的数据,然后求一下均值,放在一个新的excel表中 import os import numpy as np import xlwt def RSPR_juzhi(): list1 = [] path_f = 'F:/建模/建模/建模/train_set'

  • 1. 安装依赖 Export2Excel依赖js-xlsx、file-saver和script-loader。 安装命令: npm install xlsx file-saver -S npm install script-loader -S -D 由于js-xlsx体积还是很大的,导出功能也不是一个非常常用的功能,所以使用的时候建议使用懒加载。使用方法如下: import('@/vendor/

 相关资料
  • 本文向大家介绍java实现Excel的导入、导出,包括了java实现Excel的导入、导出的使用技巧和注意事项,需要的朋友参考一下 一、Excel的导入 导入可采用两种方式,一种是JXL,另一种是POI,但前者不能读取高版本的Excel(07以上),后者更具兼容性。由于对两种方式都进行了尝试,就都贴出来分享(若有错误,请给予指正) 方式一、JXL导入  所需jar包 JXL.jar 方式二、POI

  • 实际上,我已经使用Node.js和mongoDB完成了一个示例项目,它允许用户保存注释,现在我正在进行导出和导入 点击导出按钮,会下载一个带有用户名和备注字段的excel文件,用户必须在下载的excel文件中写入用户名和备注,现在点击导入按钮,会显示一个对话框,它会显示一个选择文件的按钮。这里我们需要选择和上传excel 上传成功后,数据将存储在mongoDB数据库中。 我已经使用javascri

  • 本文向大家介绍ASP.NET Core 导入导出Excel xlsx 文件实例,包括了ASP.NET Core 导入导出Excel xlsx 文件实例的使用技巧和注意事项,需要的朋友参考一下 ASP.NET Core 使用EPPlus.Core导入导出Excel xlsx 文件,EPPlus.Core支持Excel 2007/2010 xlsx文件导入导出,可以运行在Windows, Linux和

  • 本文向大家介绍Asp.Net使用Npoi导入导出Excel的方法,包括了Asp.Net使用Npoi导入导出Excel的方法的使用技巧和注意事项,需要的朋友参考一下 asp.net针对Excel文件的导入与导出是非常常见的功能之一。本文实例讲述了Asp.Net使用Npoi导入导出Excel的方法。分享给大家供大家参考之用。具体方法如下: 在使用Npoi导出Excel的时候,服务器可以不装任何offi

  • 问题内容: 我已经找到了将HTML表导出到Excel的方法,但是在将JavaScript表导出从网站导出到excel时遇到了问题。请帮助我找到一种方法,将此表导出到Excel。 页面,从那里我需要信息: www.jalgpall.ee/players.php?year=2012&team=84&player=28469&b=ML 此页面javascript表函数的示例: 问题答案: 我自己找到了答

  • 有没有办法从HTML表导出到excel。我在.NET核心应用程序中使用了HTML表格,需要用样式对表格进行格式化,并且需要导出到Excel。