jxl写入excel实现数据导出功能
@RequestMapping(params = "method=export", method = RequestMethod.GET)
public void exportConfig(HttpServletRequest request, HttpServletResponse response,
@RequestParam("dataId") String dataId, @RequestParam("group") String group,
@RequestParam("querymethod") String querymethod ,ModelMap modelMap) {
try{
//根据传过来的dataId和group查出当前页面的配置
Page<ConfigInfo> pageConfigInfo = new Page<ConfigInfo>();
//判断是模糊查询还是查询,querymethod从前端传过来的志只能是findConfigInfoLike或者findConfigInfo,因此querymethod有Like就是模糊查询
if(querymethod.indexOf("Like") > 0 )
pageConfigInfo = this.configService.findConfigInfoLike(MIN_PAGE_NUM, MAX_PAGE_SIZE, group, dataId);
else
pageConfigInfo = this.configService.findConfigInfo(MIN_PAGE_NUM, MAX_PAGE_SIZE, group, dataId);
List<ConfigInfo> listConfigInfo = new ArrayList<ConfigInfo>();
if (null != pageConfigInfo)
listConfigInfo = pageConfigInfo.getPageItems(); //创建文件
String tempfileName = new String(FILE_NAME.getBytes("GBK"), "ISO8859_1");
response.reset();
//设定输出文件头
response.setHeader("Content-disposition", "attachment; filename="+tempfileName);
response.setContentType("application/x-msdownload");
//取得输出流
OutputStream outputStream = response.getOutputStream();
//创建文件
WritableWorkbook writableWorkbook = Workbook.createWorkbook(outputStream);
//创建工作表对象
WritableSheet writableSheet = writableWorkbook.createSheet(DEFAULT_SHEET, 0);
//写入表头
writableSheet.addCell(new Label(0, 0, "dataId"));
writableSheet.addCell(new Label(1, 0, "group"));
writableSheet.addCell(new Label(2, 0, "content"));
//写入数据
if(listConfigInfo!=null && !listConfigInfo.isEmpty()){
for(int i=0; i<listConfigInfo.size(); i++){
writableSheet.addCell(new Label(0, i+1, listConfigInfo.get(i).getDataId()));
writableSheet.addCell(new Label(1, i+1, listConfigInfo.get(i).getGroup()));
writableSheet.addCell(new Label(2, i+1, listConfigInfo.get(i).getContent()));
}
}
writableWorkbook.write();
// 关闭工作簿
writableWorkbook.close();
outputStream.close();
}catch(Exception e)
{
log.error("导出配置出错"+e);
}
}
jxl写入excel实现数据导出功能的更多相关文章
- JXL读取写入excel表格数据
问题描述: 使用java的jxl包创建.写入excel表格数据 问题解决: (1)说明 (2)写入execel数据 注: 以上是写入数据需要调用的函数接口 注: 具体接口调用过程,如上所示 (3)读取 ...
- ThinkPHP 整合 PHPExcel ,数据导出功能实现,解决Invalid cell coordinate
PHPExcel想必大家都不陌生,是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言.可以使用它来读取.写入不同格式的电子表格 本次只做数据导出功能的 ...
- poi实现excel的导入导出功能
Java使用poi实现excel的导入导出功能: 工具类ExcelUtil,用于解析和初始化excel的数据:代码如下 package com.raycloud.kmmp.item.service.u ...
- jxl读取Excel表格数据
调用jxl包实现Excel表格数据的读取,代码如下: import java.io.File; import java.io.IOException; import java.util.ArrayLi ...
- Spring MVC 实现Excel的导入导出功能(2:Excel的导入优化和Excel的导出)
Excel的导入V2优化版 有些时候文件上传这一步骤由前端来处理,只将上传后的 URL 传输给后端(可以参考上一文中的图片上传功能),也就是导入请求中并不会直接处理 MultipartFile 对象, ...
- ThinkPHP5使用PHPExcel实现数据导出功能
1.将PHPExcel类库文件夹放入extend目录下 2.导出功能实现 public function download(){ if(request()->isPost()){ $val = ...
- laravel框架excel 的导入导出功能
1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和导出. ...
- SSH框架使用poi插件实现Excel的导入导出功能
采用POI生成excel结构 直接贴出代码 excel表格导出功能 action代码: struts.xml配置: 前台jsp代码:
- Excel数据导出功能
HTML代码: <a id="aExportData" hidden><span>Export</span></a> <div ...
随机推荐
- JSON 基础解释.
JSON.(JavaScript Object Notation) JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本 ...
- U盘占空间,但看不到内容——解决方案
原因: u盘感染了病毒 .病毒把U盘里的文件都加上了隐藏属性和系统属性,所以看不到了,但仍占用存储空间. 解决办法: 1.在“运行“里面输入:cmd,回车:2.在cmd中进入U盘.比如你的U盘是H盘, ...
- CodeSoft随笔 批量连续打印,变量打印,codesoft条码
调用codeSoft的模板,实现批量连续打印. Code: 制作标签1.lab. 添加两个变量var0,var1. using LabelManager2; string strFile = Syst ...
- MVC3/4伪静态 jexus mvc伪静态
第一步修改RouteConfig.cs文件 public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute ...
- UNET学习笔记3 - 网络系统的概念
服务器和 HOST 在Unity游戏里,一个游戏一般有一个服务器和多个客户端组成,但也可以没有服务器,用某一个客户端来同时做服务器用,这种就叫Host 在Host上的客户端叫Local Client, ...
- Scala.js v0.1 发布,在浏览器直接运行 Scala
今天我们发布了 Scala.js 的首个版本,这个项目是在今年六月份的时候宣布的. 第一个版本支持的特性: 支持所有 Scala 特性,包括宏,不过有一些 语义上的区别 可非常好的跟 JavaScri ...
- java 多线程(daemon)
package com.example; public class App { public static void main(String[] args) { DoDaemon d1 = new D ...
- [.net 面向对象编程基础] (23) 结束语
[.net 面向对象编程基础] (23) 结束语 这个系列的文章终于写完了,用了半个多月的时间,没有令我的粉丝们失望.我的感觉就是一个字累,两个字好累,三个字非常累.小伙伴们看我每篇博客的时间就知道 ...
- VS2012编译的Windows服务启动后立即停止的解决方案
ATL中的BUG,在没有COM的服务中,使用_ATL_NO_COM_SUPPORT. 并在服务中添加下面的代码 #if defined(_ATL_NO_COM_SUPPORT) HRESULT Pre ...
- 写js写傻了,明天研究一下异步
在html某元素上绑定一个click事件,该事件是一个执行事件很长的函数,比如执行几十亿或几百亿次加法,那么在这个函数执行的过程中,其他元素绑定的事件,是如何触发的呢,异步触发还是同步,触发时是怎么执 ...