java实现excel表格导出数据
/**
* 导出清单 eb中 firstRow(EntityBean) 列表第一行数据,键值对(不包含序号)例:("name","姓名")
* data(EntityBean[]) 列表数据
*
* @author zhaojq
*/
public PR exportData(EntityBean eb)
{
if (eb == null)
{
return new PR(0, "参数为空", null);
}
try
{
// 创建表格文件
String rootpath = NameedPathUtil.getDefaultSavePath();
String filepath = "/LSIP/excel/";
File f = new File(rootpath + filepath);// 创建文件夹路径
// 如果文件夹不存在则创建
if (!f.exists() && !f.isDirectory())
{
f.mkdirs();
}
String filename = System.currentTimeMillis() + ".xls";
File file = new File(f, filename);
if (!file.exists())
{
file.createNewFile();
}
EntityBean firstRow = eb.getBean("firstRow");
EntityBean[] data = eb.getBeans("data");
// 创建工作薄
WritableWorkbook workbook = Workbook.createWorkbook(file);
// 创建新的一页
WritableSheet sheet = workbook.createSheet("第1页", 0);
// Label(列,行,数据) // 第一行
String[] keys = firstRow.getBeanFieldNames();// 获取表头key
for (int i = 0; i < keys.length; i++)
{
Label firstrow = new Label(i, 0, firstRow.getString(keys[i]));
sheet.addCell(firstrow);
} // 创建数据行
for (int i = 0; i < data.length; i++)
{
for (int j = 0; j < keys.length; j++)
{
Label datarow = new Label(j, 1 + i, data[i].getString(keys[j]));
sheet.addCell(datarow);
}
}
workbook.write();
workbook.close();
String contex = LSIPConfigUtil.getDownloadConfig();
return new PR(1, "", String.format("%sLEAP/Download/default%s%s", contex, filepath, filename));
}
catch (Exception e)
{
Global.getInstance().LogError(e);
return new PR(0, e.toString(), null);
}
}
/**
* 考试清单导出
*/
public PR exportExamQD(SearchParameters spar)
{
try
{
EntityBean par = new EntityBean();
spar.setOrder("seatno");
spar.setPageSize(10000);
EntityBean[] list = examsearch4eb(spar); if(StringUtil.IsNullOrEmpty(list))return new PR(1,"查询结果为空",null);
//第一行数据
EntityBean firstBean = new EntityBean();
firstBean.set("areaname", "地区");
firstBean.set("examroomid", "考试中心");
firstBean.set("examsubject", "考试科目");
firstBean.set("examtime", "考试时间");
firstBean.set("cardno", "证件号码");
firstBean.set("personname", "姓名");
firstBean.set("mobile", "手机号");
firstBean.set("examstate", "考试报名状态");
firstBean.set("examscore", "成绩");
firstBean.set("seatno", "座位号");
firstBean.set("address", "通讯地址");
for(int i = 0;i < list.length;i++)
{
EntityBean _data = list[i];
String areaname = zonepro.getInstance().getAreaName(_data.getString("areaid"));
_data.set("areaname", areaname); if(_data.getString("examroomid") != null)
{
leapcodevalue _examroomid= CodeTypeCache.getInstance().getCodeValue("LSIP_examroom",_data.getString("examroomid"));
if(_examroomid != null)
_data.set("examroomid", _examroomid.getcodevalue());
}
if(_data.getString("examsubject") != null)
{
leapcodevalue _examsubject= CodeTypeCache.getInstance().getCodeValue("LSIP_examsubject",_data.getString("examsubject"));
if(_examsubject != null)
_data.set("examsubject", _examsubject.getcodevalue());
}
if(_data.getString("examtype") != null)
{
leapcodevalue _examtype= CodeTypeCache.getInstance().getCodeValue("LSIP_examtype",_data.getString("examtype"));
if(_examtype != null)
_data.set("examtype", _examtype.getcodevalue());
}
if(_data.getString("examstate") != null)
{
leapcodevalue _examstate= CodeTypeCache.getInstance().getCodeValue("LSIP_examstate",_data.getString("examstate"));
if(_examstate != null)
_data.set("examstate", _examstate.getcodevalue());
}
if(_data.getString("examtime") != null)
{
_data.set("examtime", _data.getString("examtime").substring(0, 16));
}
}
par.set("firstRow", firstBean);
par.set("data", list);
return new BaseDataService().exportData(par);
}
catch (Exception e)
{
Global.getInstance().LogError(e);
return new PR(0,e.getMessage(),null);
}
}
java实现excel表格导出数据的更多相关文章
- 关于Java中excel表格导出的总结(Java程序导出模板和Java根据模板导出表格两种实现方式)
导出excel通用模板(程序定义模板导出) 转载原文:https://www.jianshu.com/p/5c7b359a159c 如下代码,本方法主要用于程序定义模板格式,并导出文件.该方法将定义和 ...
- java实现excel表格导出
Java 实现导出excel表 POI 1.首先下载poi-3.6-20091214.jar,下载地址如下: http://download.csdn.net/detail/evangel_z/389 ...
- Java操作Jxl实现导出数据生成Excel表格数据文件
实现:前台用的框架是Easyui+Bootstrap结合使用,需要引入相应的Js.Css文件.页面:Jsp.拦截请求:Servlet.逻辑处理:ClassBean.数据库:SQLserver. 注意: ...
- java的excel表格的导出与下载
今天做一个java对excel表格的导出和下载的时候,从网络上搜寻了下载的模板,代码如下: 控制层: @RequestMapping(value = "excelOut_identifier ...
- JAVA处理Excel表格数据并写入数据库
package com.hncj.test; import java.io.FileInputStream; import java.sql.Connection; import java.sql.D ...
- 利用Apache POI 实现简单的Excel表格导出
1.利用POI API实现简单的Excel表格导出 首先假设一个学生实体类: package com.sun.poi.domain; import java.io.Serializable; impo ...
- Java读取excel表格
Java读取excel表格 一般都是用poi技术去读取excel表格的,但是这个技术又是什么呢 什么是Apache POI? Apache POI是一种流行的API,它允许程序员使用Java程序创建, ...
- JAVA实现Excel导入/导出【转】
JAVA实现Excel导入/导出[转] POI的下载与安装 请到网站http://www.apache.org/dyn/closer.cgi/poi/右击超链接2.5.1.zip下载压缩包poi-bi ...
- Java操作excel表格
(1)Java读取excel表格 package com.songyan.excel; import java.io.File; import java.io.FileInputStream; imp ...
随机推荐
- 通过VS创建简单的WCF服务
http://www.cnblogs.com/artech/archive/2007/09/15/893838.html http://www.topwcftutorials.net/2013/09/ ...
- [leetcode] 一些会的
链表: 61. Rotate List Given a list, rotate the list to the right by k places, where k is non-negative. ...
- 使用代理和block写一个alertView
代理: MyAlertView.h: @property (nonatomic,assign)id delegate; @protocol MyAlertViewDelegate <NSObje ...
- Hdu5093 Battle ships 二分图
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission( ...
- 疯狂房价"逼死"年轻人,别指望中国未来能出人才了
社会高房价,杀死那个学者 --北京青年学者生存侧记 这一轮,房价又上涨了,只有更疯狂. 几年前,北京三环内的房价突破5万,世人惊呼:没几年,四环5万了,五环5万了:这一轮,北京城乡结合部,哪怕脏乱差之 ...
- Linux Mysql 忘记用户密码
1.停止mysql 服务 /etc/init.d/mysqld stop 2.启动mysql服务跳过授权表并在后台运行 /etc/init.d/mysqld start -u root --sk ...
- dbms_output.put_line长度限制问题
dbms_output.put_line长度限制问题 对于10g以上版本(包括10g), dbms_output.put_line的最大长度限制是32767. 如果报错buffer overflow, ...
- springboot+dubbo之多端口注入服务
前面介绍了,springboot+dubbo基础整合,这篇介绍多端口注入服务. springboot使用@Bean注入dubbo服务,当你是单一的ProviderConfig实例,dubbo的@Ser ...
- 全新的博客之旅&大学生活
博客之旅: 刚刚申请了博客,感觉非常兴奋,整个人都变得有精神了. 想来几个月之前看到奇奇申了博客,在上面写文章,写各种解题报告,心里就好羡慕,好希望将来有一天,也能有一个属于自己的博客.由于之前课业压 ...
- memcache 笔记
在windows下安装memecache,进入到安装目录,执行帮助命令可以查看到相关帮助 启动memcache,相关命令如上,比如-p就是端口号,memcache默认端口号是11211 语法:增加ad ...