Java Web学习总结-文件下载
生活随笔
收集整理的這篇文章主要介紹了
Java Web学习总结-文件下载
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
參考資料:https://www.cnblogs.com/xdp-gacl/p/4200090.html
?
在Web應用系統開發中,文件上傳和下載功能是非常常用的功能,今天來講一下JavaWeb中的文件下載功能的實現。
直接貼圖和代碼:
? ?1、文件列表
2、在Web.xml文件中配置DownLoadServlet
<servlet><servlet-name>DownLoadServlet</servlet-name><servlet-class>com.thinkplatform.controller.DownLoadServlet</servlet-class></servlet><servlet-mapping><servlet-name>DownLoadServlet</servlet-name><url-pattern>/servlet/DownLoadServlet</url-pattern></servlet-mapping>
3、html
<td style="width:80px;"><c:url value="/servlet/DownLoadServlet" var="downurl"><c:param name="path" value="${item.path}"></c:param><c:param name="fileName" value="${item.id}"></c:param></c:url><a href="${downurl}">下載</a></td>
?
4、java代碼
package com.thinkplatform.controller; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.OutputStream; import java.net.URLEncoder; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public class DownLoadServlet extends HttpServlet{public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//得到要下載的文件名String fileName = request.getParameter("fileName"); //得到要下載的文件的路徑String path = request.getParameter("path"); //得到要下載的文件File file = new File(path + "\\" + fileName);//如果文件不存在if(!file.exists()){request.setAttribute("message", "您要下載的資源已被刪除!!");return;}//設置響應頭,控制瀏覽器下載該文件response.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));//讀取要下載的文件,保存到文件輸入流FileInputStream in = new FileInputStream(path + "\\" + fileName);//創建輸出流OutputStream out = response.getOutputStream();//創建緩沖區byte buffer[] = new byte[1024];int len = 0;//循環將輸入流中的內容讀取到緩沖區當中while((len=in.read(buffer))>0){//輸出緩沖區的內容到瀏覽器,實現文件下載out.write(buffer, 0, len);}//關閉文件輸入流 in.close();//關閉輸出流 out.close();}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doGet(request, response);}}?
轉載于:https://www.cnblogs.com/shaosks/p/9073179.html
總結
以上是生活随笔為你收集整理的Java Web学习总结-文件下载的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WPF ChromiumWebBrows
- 下一篇: 点对点架构模式