av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

java - jsp+springMVC實現文件下載的時候后臺拋出getOutputStream()異常

瀏覽:127日期:2024-01-04 17:42:00

問題描述

使用JSP+springMVC框架做的web平臺,在做文件下載的時候,遇到這樣的問題:

java - jsp+springMVC實現文件下載的時候后臺拋出getOutputStream()異常

文件下載部分的代碼是這樣寫的:

@RequestMapping('/ModelDownload{id}')public String ModelDownLoad(@PathVariable int id, HttpServletResponse response){ String fileName = 'download.txt'; String filePath = 'D:'; String modelName = new ModelService().getModelById(id).getModelName(); System.out.println(modelName); response.reset(); response.setContentType('application/x-download'); response.addHeader('Content-Disposition', 'attachment;filename='+fileName);//重新設置響應頭文件字段,設置下載文件的文件名 OutputStream OutputStream = null; FileInputStream fileInputStream = null; try {OutputStream = response.getOutputStream();fileInputStream = new FileInputStream(filePath+fileName);byte[] buffer = new byte[1024*10];//設置文件大小上限為10Mfor (int read; (read = fileInputStream.read(buffer)) != -1;){ OutputStream.write(buffer,0,read);} } catch (IOException e) {// TODO Auto-generated catch blockSystem.out.println(e.toString()); } finally{try { fileInputStream.close(); OutputStream.close();} catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace();} } return 'success';}

百度了很多,幾乎都是說在JSP上使用out對象進行clear()和close()操作的,根本沒有針對后臺操作遇到的相同問題的解決方案,求大神指導。

問題解答

回答1:

問題解決:把方法的返回類型改為void即可,猜測問題的原因可能是當返回類型為String的時候,點擊下載按鈕,彈出下載頁面,這時候后臺代碼被中斷,沒有就行close();

標簽: java
相關文章:
主站蜘蛛池模板: 久久精品国产亚洲夜色av网站 | 黄色大片毛片 | a免费在线 | 久久久精彩视频 | 免费在线观看一区二区三区 | 国产三区在线观看视频 | 久久久久久久久毛片 | 国产一区二区三区在线 | 久久久久久久久久久福利观看 | 日日躁狠狠躁aaaaxxxx | 亚洲精品久久久久久首妖 | 国产精品无码永久免费888 | 日韩国产一区二区三区 | 久久9精品| 久久天天 | 999久久久久久久久 国产欧美在线观看 | 国产亚洲一区二区三区在线观看 | 国产精品99久久久久久久久 | 日韩一二三区 | 成人中文字幕在线 | 99热热| 一区二区三区四区在线视频 | 精品无码久久久久国产 | 精品99爱视频在线观看 | 91精品国产乱码久久久久久久久 | 天天干视频| 国产精品夜夜夜一区二区三区尤 | 国产在线不卡视频 | 一级片av| 国产欧美在线 | 日本视频一区二区三区 | 中日字幕大片在线播放 | 国产人成在线观看 | 日本一区二区高清视频 | 亚洲一区二区三区国产 | 精品伊人 | 国产精品不卡 | 午夜视频在线免费观看 | 在线观看成人免费视频 | 欧美一二三 | 国产日韩精品在线 |