您的位置:首页 > 编程语言 > Java开发

SpringMVC 下载

2015-10-20 22:58 288 查看
SpringMVC 下载
@RequestMapping(value = "/downDataPacket")
public void downDataPacket(@RequestParam(value="sessionId", required=true) Long sessionId,HttpServletResponse response){
log.debug("SessionAuditController--downDataPacket---sessionId:"+sessionId);

String fileName="download-single.txt";
if(null!=fileName&&(!"".equals(fileName))){
log.debug("------start down file!!!-----");

response.reset();// 不加这一句的话会出现下载错误
response.setHeader("Content-disposition", "attachment; filename="+fileName);// 设定输出文件头
response.setContentType("text/x-plain");// 定义输出类型
ServletOutputStream out = null;
FileInputStream fis = null;
BufferedInputStream inputBufStream = null;
BufferedOutputStream outputBufStream = null;
try {
out = response.getOutputStream();
String path =  "D:\\down\\download-single.txt";
fis = new java.io.FileInputStream(path);
inputBufStream = new BufferedInputStream(fis);
outputBufStream = new BufferedOutputStream(out);
byte[] cache = new byte[2048];
int offset = 0;
while ((offset = inputBufStream.read(cache, 0, cache.length)) > 0) {
outputBufStream.write(cache, 0, offset);
}
outputBufStream.flush();
outputBufStream.close();
inputBufStream.close();
fis.close();
out.close();
} catch (Exception e) {
e.printStackTrace();
this.error("下载异常!");
log.debug("------start down false!!!-----");
}finally{
try {
if (out != null)
out.close();
if (outputBufStream != null)
outputBufStream.close();
if (inputBufStream != null)
inputBufStream.close();
if (fis != null)
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
this.info("下载成功!");
log.debug("------start down success!!!-----");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: