- 浏览: 67787 次
- 性别:
- 来自: 绍兴
最新评论
项目支持大数据量导出excel,我的方案是使用poi生成excle,然后使用struts的下载将其导出,个人感觉这样操作效率是最快的
基本代码:
告诉struts文件所在位置和下载文件的名称,设定return返回类型stream即可以实现下载了,但是现在碰到这样一个问题:生成在服务器上的excel经过一次导出后将没任何用处,而且一个文件都在10M左右,必须把他删除...可想而知 return前是不能做删除的,否则在return以后struts就获取不到文件而输出流了,所以我想到了使用线程来删除,这个是我第一次在实战中用到线程,心里有点激动,所以做个笔记供日后参考;
我的线程类,大致思路就是拿当前事件与执行时间比较,如果执行时间+设定的时间 小于当前时间的时候将文件删除
所以我现在只要这样就搞定了
基本代码:
this.setDownLoadFilePath(path); this.setDownLoadFileName("webOperate.xls"); return "downLoad";
告诉struts文件所在位置和下载文件的名称,设定return返回类型stream即可以实现下载了,但是现在碰到这样一个问题:生成在服务器上的excel经过一次导出后将没任何用处,而且一个文件都在10M左右,必须把他删除...可想而知 return前是不能做删除的,否则在return以后struts就获取不到文件而输出流了,所以我想到了使用线程来删除,这个是我第一次在实战中用到线程,心里有点激动,所以做个笔记供日后参考;
public class FileDelete implements Runnable { //目标文件地址 private String filePath = ""; //执行时间 private Date date; //执行后过多少时间删除(单位:分) private int flag = 1; public FileDelete(String path, Date d) { this.filePath = path; this.date = d; } @Override public void run() { File file = new File(filePath); while (true) { Date now = new Date(); if (now.getTime() > (date.getTime() + flag * 60 * 1000)) { if (file.exists()) { file.delete(); break; } } } } public String getFilePath() { return filePath; } public void setFilePath(String filePath) { this.filePath = filePath; } public Date getDate() { return date; } public void setDate(Date date) { this.date = date; } public int getFlag() { return flag; } public void setFlag(int flag) { this.flag = flag; } }
我的线程类,大致思路就是拿当前事件与执行时间比较,如果执行时间+设定的时间 小于当前时间的时候将文件删除
所以我现在只要这样就搞定了
this.setDownLoadFilePath(path); this.setDownLoadFileName("webOperate.xls"); //开启线程定时删除文件 Date date = new Date(); FileDelete fileDelete = new FileDelete(filePath,date); Thread t = new Thread(fileDelete); t.start(); return "downLoad";
发表评论
-
Web开发学习13聊聊java反射
2016-07-12 18:41 717很喜欢一本叫《走出软件作坊》的书,其中有一句话让我较为深刻,“ ... -
Web开发学习12 浅谈设计模式
2016-07-01 13:33 1282在我刚接触 ... -
Web开发学习11 全局缓存控制
2015-10-12 14:27 705缓存用的好可以减少数据库的压力,在大并发的情况下极大的提升服务 ... -
Web开发学习10 hadoop实战
2015-10-09 14:02 696前一篇说到项目记录了很多埋点日志,当有一天项目需求需要对这些日 ... -
Web开发学习(9)全局埋点
2015-07-27 11:10 1958埋点的作用是把客户端每次访问服务端的操作记录下来,包括请求连接 ... -
Web开发学习8Struts2基类封装
2015-07-24 12:03 666一个好的基类可以帮助开发者减少很多开发工作,像我这种爱偷懒的人 ... -
Web开发学习7按钮级别权限控制
2015-07-23 16:21 13247这个功能的思路是自己原创的,没看过其他例子,其实是在做之前网上 ... -
Web开发学习6添加liqiubase
2015-07-22 14:29 1402开发过程中经常碰到数据库更改的情况,在日常环境下如果每位开发人 ... -
浅列JavaEnum
2014-01-05 16:42 748enum Province{ ZHEJIANG,SHANGHA ... -
maven常用命令
2013-07-08 10:20 7511、创建普通Java项目: ... -
canvas绘制科赫雪花
2012-12-20 17:24 2109<html> <head> ... -
html5 audio与video方法属性事件概括
2012-12-20 14:46 1061play() 继续播放 pause() ... -
spring 整合mina
2012-12-20 11:48 1072首先定义自定义过滤器 <bean id=" ... -
Web开发学习(5)添加springsecurity应用
2011-12-14 15:00 918我学习公司这个架构多半就是为了把springsecurity搞 ... -
Web开发学习(4)添加spring应用
2011-12-14 14:45 760印象中似乎没做过不用spring的项目,因为它在web开发中的 ... -
Web开发学习(3)配置struts-tiles插件(附带json插件)
2011-12-05 15:22 2514struts的tiles插件是非常实用的,从某些方面可以很好的 ... -
jQuery实现表格行点击选中复选框
2011-11-23 12:36 5941这个需求是在项目完成后客户提出的要求,看似简单但是还需要一点小 ... -
Web开发学习(2)配置convention插件
2011-11-04 10:28 1347注解的方式某些程度上能减少xml的配置量,个人感觉使程序更加清 ... -
Web开发学习(1)使用eclipse搭建maven项目
2011-10-20 10:04 5695首先用eclipse创建工程 ne ... -
数据库连接泛型基类创建
2011-06-30 11:49 950记录 以便以后参考---- 基类代码 public cl ...
相关推荐
清除临时文件:删除%TEMP%,%windir%\Temp及%windir%\Downloaded Program Files下的所有文件。 禁用硬盘自动播放:本功能还包括磁盘无法双击打开故障。注意,某些故障修复后可能需要注销或重启才能生效。 修复安全...
清除临时文件:删除%TEMP%,%windir%\Temp及%windir%\Downloaded Program Files下的所有文件。 禁用硬盘自动播放:本功能还包括磁盘无法双击打开故障。注意,某些故障修复后可能需要注销或重启才能生效。 修复安全...
清除临时文件:删除%TEMP%,%windir%\Temp及%windir%\Downloaded Program Files下的所有文件。 禁用硬盘自动播放:本功能还包括磁盘无法双击打开故障。注意,某些故障修复后可能需要注销或重启才能生效。 修复安全...
清除临时文件:删除%TEMP%,%windir%\Temp及%windir%\Downloaded Program Files下的所有文件。 禁用硬盘自动播放:本功能还包括磁盘无法双击打开故障。注意,某些故障修复后可能需要注销或重启才能生效。 修复安全...
清除临时文件:删除%TEMP%,%windir%\Temp及%windir%\Downloaded Program Files下的所有文件。 禁用硬盘自动播放:本功能还包括磁盘无法双击打开故障。注意,某些故障修复后可能需要注销或重启才能生效。 修复安全...
清除临时文件:删除%TEMP%,%windir%\Temp及%windir%\Downloaded Program Files下的所有文件。 禁用硬盘自动播放:本功能还包括磁盘无法双击打开故障。注意,某些故障修复后可能需要注销或重启才能生效。 修复安全...
清除临时文件:删除%TEMP%,%windir%\Temp及%windir%\Downloaded Program Files下的所有文件。 禁用硬盘自动播放:本功能还包括磁盘无法双击打开故障。注意,某些故障修复后可能需要注销或重启才能生效。 修复安全...
从而减少硬盘上文件碎片的产生,并且不需要主动删除这些临时文件,一旦重新启动,这些垃圾文件就自动消失了。也正是这个特性,使得内存盘不适合存储重要的数据文档,因为一旦死机,这些东西就再也找不回来了。 安装...
从而减少硬盘上文件碎片的产生,并且不需要主动删除这些临时文件,一旦重新启动,这些垃圾文件就自动消失了。也正是这个特性,使得内存盘不适合存储重要的数据文档,因为一旦死机,这些东西就再也找不回来了。 安装...
216 如何创建一个临时文件? 217 如何创建一个特大型文件? 218 如何创建一个文本文件? 219 如何删除一个文本文件? 220 如何更名一个文本文件? 221 如何对文本文件进行查找与替换? 222 如何从文本文件中读取一个字符串...
实现了 清楚internet临时文件、Cookie的清除、游览器地址栏历史地址的清除、清楚表单自动完成历史记录、清楚自动密码历史记录、清除收藏夹中的内容、清除RAS自动拨号历史记录、清除系统临时文件夹、清空回收站、清除...
18:单线程下载时不能创建临时文件. 19:下载流文件(rm,Media Player). Notepad++ V5.6.8 源码! 如题。 OA精灵代码 c++版 一套oa系统。 ocxdlgtest dll的一个实例。 OD反汇编引擎(带VC修改版和原版) 如题。主要...
实现了 清楚internet临时文件、Cookie的清除、游览器地址栏历史地址的清除、清楚表单自动完成历史记录、清楚自动密码历史记录、清除收藏夹中的内容、清除RAS自动拨号历史记录、清除系统临时文件夹、清空回收站、清除...
实现了 清楚internet临时文件、Cookie的清除、游览器地址栏历史地址的清除、清楚表单自动完成历史记录、清楚自动密码历史记录、清除收藏夹中的内容、清除RAS自动拨号历史记录、清除系统临时文件夹、清空回收站、清除...
实现了 清楚internet临时文件、Cookie的清除、游览器地址栏历史地址的清除、清楚表单自动完成历史记录、清楚自动密码历史记录、清除收藏夹中的内容、清除RAS自动拨号历史记录、清除系统临时文件夹、清空回收站、清除...
实现了 清楚internet临时文件、Cookie的清除、游览器地址栏历史地址的清除、清楚表单自动完成历史记录、清楚自动密码历史记录、清除收藏夹中的内容、清除RAS自动拨号历史记录、清除系统临时文件夹、清空回收站、清除...
4. 加入查询结果二进制内容导批量导出成文件 5. 查询显示中可显示对应的字段类型及长度等信息 新增功能: 1. 界面大量调整把所有右击出来的菜单都显示在对应的功能位置上,操作上来更新顺手 2. 高级查询的窗口全部...
4. 加入查询结果二进制内容导批量导出成文件 5. 查询显示中可显示对应的字段类型及长度等信息 新增功能: 1. 界面大量调整把所有右击出来的菜单都显示在对应的功能位置上,操作上来更新顺手 2. 高级查询的窗口全部...