@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实现数据导出功能的更多相关文章

  1. JXL读取写入excel表格数据

    问题描述: 使用java的jxl包创建.写入excel表格数据 问题解决: (1)说明 (2)写入execel数据 注: 以上是写入数据需要调用的函数接口 注: 具体接口调用过程,如上所示 (3)读取 ...

  2. ThinkPHP 整合 PHPExcel ,数据导出功能实现,解决Invalid cell coordinate

    PHPExcel想必大家都不陌生,是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言.可以使用它来读取.写入不同格式的电子表格 本次只做数据导出功能的 ...

  3. poi实现excel的导入导出功能

    Java使用poi实现excel的导入导出功能: 工具类ExcelUtil,用于解析和初始化excel的数据:代码如下 package com.raycloud.kmmp.item.service.u ...

  4. jxl读取Excel表格数据

    调用jxl包实现Excel表格数据的读取,代码如下: import java.io.File; import java.io.IOException; import java.util.ArrayLi ...

  5. Spring MVC 实现Excel的导入导出功能(2:Excel的导入优化和Excel的导出)

    Excel的导入V2优化版 有些时候文件上传这一步骤由前端来处理,只将上传后的 URL 传输给后端(可以参考上一文中的图片上传功能),也就是导入请求中并不会直接处理 MultipartFile 对象, ...

  6. ThinkPHP5使用PHPExcel实现数据导出功能

    1.将PHPExcel类库文件夹放入extend目录下 2.导出功能实现 public function download(){ if(request()->isPost()){ $val = ...

  7. laravel框架excel 的导入导出功能

      1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和导出. ...

  8. SSH框架使用poi插件实现Excel的导入导出功能

    采用POI生成excel结构 直接贴出代码  excel表格导出功能 action代码: struts.xml配置: 前台jsp代码:

  9. Excel数据导出功能

    HTML代码: <a id="aExportData" hidden><span>Export</span></a> <div ...

随机推荐

  1. myeclise连接oracle数据库实现登录

    package A; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatem ...

  2. uva-10305

      题意:给出n个任务,任务不是完全独立的,有些任务必须依赖另外一些任务才能执行:m个任务关系. 输出:n个任务的可能执行顺序: 我的解决方法:这就是个赤裸裸的拓扑排序,直接dfs拓扑每一个任务点,然 ...

  3. CPU与内存的关系

    至今才对cpu和内存有一定了解了,下面有几个比喻的理解,很形象呦~ 1# 例如你要吃东西时,硬盘是锅,内存是碗,CPU是你,浅显点就是这样子了~ 2# 例如电脑是企业,内存是车间,cpu是生产线,硬盘 ...

  4. WINDOWS窗口风格 WS_OVERLAPPEDWINDOW

    转自:http://blog.csdn.net/hquxiezk/archive/2008/07/29/2733269.aspx #define WS_OVERLAPPEDWINDOW (WS_OVE ...

  5. 运维自动化工具---Puppet

    案例环境:-----------------------------------------------------------------主机  操作系统   IP地址  主要软件--------- ...

  6. ABP框架详解(六)Aspects

    这种AOP式的设计非常类似于Asp.net MVC和WebApi中过滤器(Filter)机制,感觉没有太多可讲述的,只能谈谈设计思路. 框架中AspectAttribute特性用于设置到需要被拦截的T ...

  7. JAVA CAS原理深度分析-转载

    参考文档: http://www.blogjava.net/xylz/archive/2010/07/04/325206.html http://blog.hesey.net/2011/09/reso ...

  8. C++混合编程之idlcpp教程Python篇(5)

    上一篇在这  C++混合编程之idlcpp教程Python篇(4) 第一篇在这 C++混合编程之idlcpp教程(一) 与前面的工程相似,工程PythonTutorial3中,同样加入了三个文件:Py ...

  9. Http压力测试工具HttpTest4Net

    HttpTest4Net是一款基于C#实现的和HTTP压力测试工具,通过工具可以简单地对HTTP服务进行一个压力测试.虽然VS.NET也集成了压力测试项目,但由于VS自身占用的资源导致了在配置不高的P ...

  10. Javascrpt无刷新文件上传

    最近工作中遇到上传文件问题,主要需求是一步点击上传,兼容ie8+,当时用的dojox/form/uploader控件,这两天扒了一下源码,明白了原理拿出来分享一下. 总体思路如下: 1.对于支持XML ...