JXLS根据模板导出Excel实例教程

所属分类: 软件编程 / java 阅读数: 51
收藏 0 赞 0 分享

本文实例为大家分享了JXLS根据模板导出Excel实例的具体方法,供大家参考,具体内容如下

先做模板,做成想要的格式样子保存,然后通过程序根据模板生成对应样式的Excel文件,代码简单。什么连接数据库查询然后将结果生成Excel文件就不讲了,放入List里面,然后套一下就行了,照老虎花猫。

准备:

1、相关jar包:

2、模板文件 :

开始:

1、 先实体类:Staff.java

package myjxls;
/**
 * 2014-3-17
 * 8dou
 * 实体
 */
public class Staff {
 
  /**
  * 名称
  */
  private String name;
 
  /**
  * 薪资
  */
  private Double payment;
 
  /**
  * 年终奖
  */
  private Double bonus;
 
  public String getName() {
   return name;
  }
 
  public void setName(String name) {
   this.name = name;
  }
 
  public Double getPayment() {
   return payment;
  }
 
  public void setPayment(Double payment) {
   this.payment = payment;
  }
 
  public Double getBonus() {
   return bonus;
  }
 
  public void setBonus(Double bonus) {
   this.bonus = bonus;
  }
  public Staff(String name, Double payment, Double bonus) {
  super();
  this.name = name;
  this.payment = payment;
  this.bonus = bonus;
  }
}

2、测试类 ChartTest.java 

package myjxls;
/**
 * 2014-3-17
 * 8dou
 * 测试JXLS根据模板样式导出Excel
 */
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
import net.sf.jxls.transformer.XLSTransformer;
public class ChartTest {
 
 /**
  * @param args
  */
 public static void main(String[] args) throws Exception {
  List<Staff> staffs = new ArrayList<Staff>();
   
  Staff s1 = new Staff("张三", 6000D, 3000D);
  staffs.add(s1);
   
  Staff s2 = new Staff("李四", 5000D, 2000D);
  staffs.add(s2);
   
  Staff s3 = new Staff("王五", 4000D, 1000D);
  staffs.add(s3);
   
  String srcFilePath = "e:/simple.xlsx";
  String destFilePath = "e:/template-simple.xlsx";
  Map<String, List<Staff>> beanParams = new HashMap<String, List<Staff>>();
  beanParams.put("staffs", staffs);
   
  XLSTransformer former = new XLSTransformer();
  former.transformXLS(srcFilePath, beanParams, destFilePath);
  
  System.out.println("the end !!!");
 }
 
}

运行结束后看生成的Excel文件,template-simple.xlsx

如果是Web,需要下载可以看

 // 下载
 public static void doDownLoad(String path, String name,
   HttpServletResponse response) {
  try {
   response.reset();
   response.setHeader("Content-disposition",
     "attachment;success=true;filename ="
       + URLEncoder.encode(name, "utf-8"));
   BufferedInputStream bis = null;
   BufferedOutputStream bos = null;
   OutputStream fos = null;
   InputStream fis = null;
   File uploadFile = new File(path);
   fis = new FileInputStream(uploadFile);
   bis = new BufferedInputStream(fis);
   fos = response.getOutputStream();
   bos = new BufferedOutputStream(fos);
   // 弹出下载对话框
   int bytesRead = 0;
   byte[] buffer = new byte[8192];
   while ((bytesRead = bis.read(buffer, 0, 8192)) != -1) {
    bos.write(buffer, 0, bytesRead);
   }
   bos.flush();
   fis.close();
   bis.close();
   fos.close();
   bos.close();
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

最后补充下Excel知识:在单元格里面将日期和时间显示在同一个单元格里面,自定义单元格式→yyyy-m-d hh:mm:ss

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

spring boot 静态资源处理方法

本篇文章主要介绍了spring boot 静态资源处理方法。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解spring boot 使用application.properties 进行外部配置

这篇文章主要介绍了详解spring boot 使用application.properties 进行外部配置,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Java实现分页的前台页面和后台代码

这篇文章主要为大家详细介绍了Java实现分页的前台页面和后台代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

详解spring面向切面aop拦截器

spring中有很多概念和名词,比如过滤器、拦截器、aop等。这篇文章主要介绍了详解spring面向切面aop拦截器,有兴趣的可以了解一下。
收藏 0 赞 0 分享

Java easyui树形表格TreeGrid的实现代码

这篇文章主要为大家详细介绍了Java easyui树形表格TreeGrid的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java的NIO与IO的详解及对比

这篇文章主要介绍了Java的NIO与IO的详解及对比的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Java中网络IO的实现方式(BIO、NIO、AIO)介绍

这篇文章主要介绍了Java中网络IO的实现方式(BIO、NIO、AIO)介绍的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Java 敏感信息加密处理

本文主要介绍了Java 敏感信息加密处理的相关知识:1)敏感信息加密处理我们要实现什么;2)敏感信息加密处理我做了些什么;3)敏感信息加密实现方法。具有很好的参考价值,下面跟着小编一起来看下吧
收藏 0 赞 0 分享

详解使用Spring3 实现用户登录以及权限认证

这篇文章主要介绍了详解使用Spring3 实现用户登录以及权限认证,这里整理了详细的代码,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

Java的内存机制详解

本文主要介绍了Java的内存机制的相关知识,具有很好的参考价值,下面跟着小编一起来看下吧
收藏 0 赞 0 分享
查看更多