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);
		}
	}

  

时间: 2024-12-11 12:03:47

java实现excel表格导出数据的相关文章

JAVA把excel表格的数据导入到数据库

package com.insertdatebase; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; import o

java poi excel 导入导出数据

背景:1.pringmvc 框架下 的excel 导入导出   2.OI 操作office. 页面代码: <div class="modal fade bs-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true"> <div class=&quo

java实现excel表格导出

Java 实现导出excel表 POI 1.首先下载poi-3.6-20091214.jar,下载地址如下: http://download.csdn.net/detail/evangel_z/3895051 2.Student.java import java.util.Date; public class Student { private int id; private String name; private int age; private Date birth; public Stu

Java -&gt; 把Excel表格中的数据写入数据库与从数据库中读出到本地 (未完善)

写入: private void insertFile(HttpServletRequest request, HttpServletResponse response) throws IOException { String path_member = request.getParameter("path_member"); List list = this.insert("f:/tmp001.xls", "gs_sale_members");

java生成excel表格和pdf并实现下载弹出框

今天在pdf和excel中都实现了在浏览器弹出下载框 将之前在网上查找的生成excel表格代码稍微修改下: public class CreateSimpleExcelToDisk { /** * @功能:手工构建一个简单格式的Excel */ private static List<News> getNews() throws Exception { List<News> data = new ArrayList<News>(); NewsDao dao = new

【代码实现】PHP导入Excel和导出数据为Excel文件

文章来源:PHP开发学习门户 地址:http://www.phpthinking.com/archives/560 有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入.另外将mysql数据导出为Excel与本站上篇文章中导出CSV一样,只是将逗号分割符换成制表符,并修改header信息就可以了. 下载源码 本文中,我们沿用本站文章:使用PHP导入和导出CSV文件 中实例的数据表以及html. 1.导入XL

PHP Excel表格导出图片方法

1.进入PHP Excel官网后,找到右边的download按钮,下载,下载完成的是一个压缩文件,解压放到你的项目目录里. 2.查看解压文件是否有PHPExcel_Worksheet_Drawing图片文件类. 3.创建一个excel.php文件,开始编写PHP Excel到出. 实例代码: <?php /** * PHP Excel表格导出图片方法 * 2015-07-30 巴亚云 */ function ExcelCustomers(){ /*引入phpexcel核心类文件*/ includ

Java读取excel表格

Java读取excel表格 一般都是用poi技术去读取excel表格的,但是这个技术又是什么呢 什么是Apache POI? Apache POI是一种流行的API,它允许程序员使用Java程序创建,修改和显示MS Office文件.这由Apache软件基金会开发使用Java分布式设计或修改Microsoft Office文件的开源库.它包含类和方法对用户输入数据或文件到MS Office文档进行解码. Apache POI Apache POI是Apache软件基金会提供的100%开源库.大多

java jxl excel 导入导出的 总结(建立超链接,以及目录sheet的索引)

最近项目要一个批量导出功能,而且要生成一个单独的sheet页,最后后面所有sheet的索引,并且可以点击进入连接.网上搜索了一下,找到一个方法,同时把相关的excel导入导出操作记录一下!以便以后使用! 简单先写一下目录的建立的主要代码,测试用的 List ls = new ArrayList();//报表名称列表  ls.add("BB_BB03");  ls.add("BB_BB05");  ls.add("BB_BB06"); try {