java:easypoi导出Excel

使用

  • 1.easypoi 父包
  • 2.easypoi-annotation 基础注解包,作用与实体对象上,拆分后方便maven多工程的依赖管理
  • 3.easypoi-base 导入导出的工具包,可以完成Excel导出,导入,Word的导出,Excel的导出功能
  • 4.easypoi-web 耦合了spring-mvc 基于AbstractView,极大的简化spring-mvc下的导出功能

如果不使用spring mvc的便捷福利,直接引入easypoi-base jar包就可以了,easypoi-annotation jar包

如果使用maven,请使用如下坐标

        
            cn.afterturn
            easypoi-base
            3.2.0
        
        
            cn.afterturn
            easypoi-web
            3.2.0
        
        
            cn.afterturn
            easypoi-annotation
            3.2.0
        

实现 

package com.xzc.model;

import cn.afterturn.easypoi.excel.annotation.Excel;

import java.util.Date;

public class Person {

    @Excel(name = "姓名", orderNum = "0")
    private String name;

    @Excel(name = "性别", replace = {"男_1", "女_2"}, orderNum = "1")
    private String sex;

    public Person(String name, String sex) {
        this.name = name;
        this.sex = sex;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

}
/**
 * 注解导出
 *
 * @param response
 */
@RequestMapping("/export")
public void export(HttpServletResponse response) {
    //模拟从数据库获取需要导出的数据
    List personList = new ArrayList<>();
    Person person1 = new Person("路飞", "1");
    Person person2 = new Person("娜美", "2");
    personList.add(person1);
    personList.add(person2);
    //导出操作
    FileUtil.exportExcel(personList, "花名册", "草帽一伙", Person.class, "海贼王.xls", response);
}

/**
 * map导出
 *
 * @param response
 */
@RequestMapping("/exportm")
public void exportm(HttpServletResponse response) {
    //标题
    List entityList = new ArrayList<>();
    //内容
    List> dataResult = new ArrayList<>();
    entityList.add(new ExcelExportEntity("表头苹果", "apple", 15));
    entityList.add(new ExcelExportEntity("表头香蕉", "banana", 25));
    for (int i = 0; i < 10; i++) {
        Map map = new HashMap<>();
        map.put("apple", "苹果" + i);
        map.put("banana", "香蕉" + i);
        dataResult.add(map);
    }
    Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("测试", "测试"), entityList,
            dataResult);
    FileUtil.downLoadExcel("shuiguo.xls", response, workbook);

}

/**
 * 模板导出
 *
 * @param response
 */
@RequestMapping("/printTest")
public void printTest(HttpServletResponse response) {
    TemplateExportParams params = new TemplateExportParams("excelTemp/成绩单模板.xls");
    Map map = new HashMap<>();
    map.put("putinTime", "2014-12-25 14:30:00");
    map.put("paperName", "java");
    map.put("userId", "java");
    map.put("score", 55);
    map.put("note", "xioaxing");
    List> listMap = new ArrayList<>();
    for (int i = 0; i < 4; i++) {
        Map lm = new HashMap<>();
        lm.put("index", i + 1 + "");
        lm.put("questionName", "fasfafaffafafafa");
        lm.put("answerA", "A001");
        lm.put("answerB", "A001");
        lm.put("answerC", "A001");
        lm.put("answerD", "A001");
        lm.put("myAnswer", "A");
        lm.put("sign", "V");
        listMap.add(lm);
    }
    map.put("maplist", listMap);
    Workbook workbook = ExcelExportUtil.exportExcel(params, map);
    FileUtil.downLoadExcel("成绩单.xls", response, workbook);
}

 演示

java:easypoi导出Excel_第1张图片

java:easypoi导出Excel_第2张图片


参考链接:

码云源码

官方文档

 

你可能感兴趣的:(java)