struts實現下載篇
java 程式碼
public class DownLoadAction extends Action {
// --------------------------------------------------------- Instance
// Variables
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
// --------------------------------------------------------- Methods
/**
* Method execute
*
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
String downloadPath = servlet.getInitParameter("file-upload");
String fileName = new String(request.getParameter("filename").getBytes(
"ISO-8859-1"), "GB2312");
response.reset();
response.setContentType("application/x-msdownload");
response.addHeader("Content-Disposition", "attachment; filename=""
+ new String(fileName.getBytes("GB2312"), "ISO-8859-1") + """);
try {
bis = new BufferedInputStream(new FileInputStream(downloadPath
+ "/" + fileName));
bos = new BufferedOutputStream(response.getOutputStream());
byte[] buff = new byte[20480];
while ((bis.read(buff, 0, buff.length)) != -1) {
bos.write(buff, 0, buff.length);
}
bos.flush();
} catch (Exception e) {
e.printStackTrace();
} finally {
bos.close();
bis.close();
}
return mapping.findForward("downloadfile");
}
}
web.xml
xml 程式碼
action
org.apache.struts.action.ActionServlet
config
/WEB-INF/conf/struts-config.xml
config/login
/WEB-INF/conf/login/struts-config-login.xml
debug
3
detail
3
file-upload
E:/upload
2
Set Character Encoding
com.capinfo.filter.SetCharacterEncodingFilter
encoding
GB2312
Set Character Encoding
/*
action
*.do
/page/welcome.jsp
/WEB-INF/struts-bean.tld
/WEB-INF/struts-bean.tld
/WEB-INF/struts-html.tld
/WEB-INF/struts-html.tld
/WEB-INF/struts-logic.tld
/WEB-INF/struts-logic.tld
/WEB-INF/struts-template.tld
/WEB-INF/struts-template.tld
/WEB-INF/struts-tiles.tld
/WEB-INF/struts-tiles.tld
/WEB-INF/struts-nested.tld
/WEB-INF/struts-nested.tld
struts-config
xml 程式碼
[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/800861/viewspace-922102/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 79、概述struts,以及struts如何實現MVC架構的?MVC架構
- struts2總結(三)--官網下載struts2的jar包JAR
- Struts2的檔案上傳下載
- Struts框架 實現複數加減操作框架
- servlet實現下載功能Servlet
- (三)struts2進階之實現Action
- struts動態多檔案上傳實現
- Flutter實現檔案下載Flutter
- AJAX實現檔案下載----
- 使用Servlet實現檔案下載Servlet
- 前端方式實現excel下載前端Excel
- Flutter 實現檔案下載功能Flutter
- vc實現https檔案下載HTTP
- Java實現檔案下載功能Java
- struts:實現圖片的上傳 argument type mismatch errorError
- 常見下載方式之BT下載實現過程詳解
- Nginx 高階篇(三)負載均衡的實現Nginx負載
- python實現郵件接收、附件下載Python
- 前端實現點選下載圖片前端
- js實現txt/excel檔案下載JSExcel
- 2020JavaWeb實現檔案下載JavaWeb
- Feign實現檔案上傳下載
- js下載檔案的實現方式JS
- Http歷險記(下)-- Struts的秘密HTTP
- 如何實現 AppStore App 的自動下載APP
- OkHttp優雅的實現下載監聽HTTP
- SpringMVC實現檔案上傳&下載(2)SpringMVC
- 實現嗶哩嗶哩視訊下載
- 前端實現生成條形碼並下載前端
- APICloud 實現文件下載和預覽功能APICloud
- vue點選下載圖片的實現Vue
- 在struts2中實現去掉字尾及url重寫
- 一篇有趣的負載均衡演算法實現負載演算法
- Flutter 下載篇 - 叄 | 網路庫切換實踐與思考Flutter
- 前端實現檔案下載和拖拽上傳前端
- 使用Retrofit+RxJava實現帶進度下載RxJava
- .netcore+vue 實現壓縮檔案下載NetCoreVue
- 70 行 python 程式碼實現桌布批量下載Python
- java實現檔案的下載的方法概述Java