[Java] 纯文本查看 复制代码
<dependencies>
<!-- jxls核心依赖 -->
<dependency>
<groupId>net.sf.jxls</groupId>
<artifactId>jxls-core</artifactId>
<version>1.0.6</version>
</dependency>
<!-- junit单元测试依赖 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<!-- 日志的依赖 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.12</version>
</dependency>
</dependencies>
[Java] 纯文本查看 复制代码
public class EmployeeInfo {
private String empNo;//员工编号
private String empName;//员工姓名
private String empSex;//员工性别:1代表男,0代表女
private Integer empAge;//员工年龄
private Double empSalary;//员工薪资
public String getEmpNo() {
return empNo;
}
public void setEmpNo(String empNo) {
this.empNo = empNo;
}
public String getEmpName() {
return empName;
}
public void setEmpName(String empName) {
this.empName = empName;
}
public String getEmpSex() {
return empSex;
}
public void setEmpSex(String empSex) {
this.empSex = empSex;
}
public Integer getEmpAge() {
return empAge;
}
public void setEmpAge(Integer empAge) {
this.empAge = empAge;
}
public Double getEmpSalary() {
return empSalary;
}
public void setEmpSalary(Double empSalary) {
this.empSalary = empSalary;
}
}
[Java] 纯文本查看 复制代码
public class EmployeeDao {
/**
* 模拟查询数据库得到100名员工的信息
* @return :100名员工的信息
*/
public List<EmployeeInfo> findEmployees(){
List<EmployeeInfo> list = new ArrayList<EmployeeInfo>();
for(int i=1;i<=100;i++){
EmployeeInfo emp = new EmployeeInfo();
emp.setEmpNo(UUID.randomUUID().toString());//使用UUID生成随机
emp.setEmpName("员工姓名"+i);
emp.setEmpAge(new Random().nextInt(40));//随机生成年龄
emp.setEmpSex(i%2+"");//根据序号生成员工的性别
emp.setEmpSalary(new Random().nextDouble()*10000);//随机生成薪资
list.add(emp);
}
return list;
}
}
[Java] 纯文本查看 复制代码
public class ExportExcel {
public void expExcelWithJxls() throws Exception{
//1、获取导出文档中的数据,存放到一个Map集合中
EmployeeDao empDao = new EmployeeDao();
List<EmployeeInfo> employees = empDao.findEmployees();
Map<String,Object> map = new HashMap<String,Object>();
map.put("emps", employees);
//2、使用ClassLoader读取模板
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("emp_template.xlsx");
//3、创建Excel文档转换器
XLSTransformer xlsTransformer = new XLSTransformer();
//4、基于数据和模板,转换成Excel文档
//第一个参数是模板的输入流
//第二个参数是需要生成到文档中的数据
Workbook workbook = xlsTransformer.transformXLS(inputStream, map);
//5、把Excel文档输出到指定位置
FileOutputStream outputStream = new FileOutputStream("d:/jxls/empInfo.xlsx");
workbook.write(outputStream);
}
}