91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 838KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-05
  • 語言: Java
  • 標(biāo)簽: jsp??web??

資源簡介

jsp實(shí)現(xiàn)文件上傳下載

資源截圖

代碼片段和文件信息

package?me.gacl.web.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?{

????
????/**
?*?
?*/
private?static?final?long?serialVersionUID?=?1L;

public?void?doGet(HttpServletRequest?request?HttpServletResponse?response)
????????????throws?ServletException?IOException?{
????????//得到要下載的文件名
????????String?fileName?=?request.getParameter(“filename“);??//23239283-92489-阿凡達(dá).avi
????????fileName?=?new?String(fileName.getBytes(“iso8859-1“)“UTF-8“);
????????//上傳的文件都是保存在/WEB-INF/upload目錄下的子目錄當(dāng)中
????????String?fileSaveRootPath=this.getServletContext().getRealPath(“/WEB-INF/upload“);
????????//通過文件名找出文件的所在目錄
????????String?path?=?findFileSavePathByFileName(fileNamefileSaveRootPath);
????????//得到要下載的文件
????????File?file?=?new?File(path?+?“\\“?+?fileName);
????????//如果文件不存在
????????if(!file.exists()){
????????????request.setAttribute(“message“?“您要下載的資源已被刪除!!“);
????????????request.getRequestDispatcher(“/message.jsp“).forward(request?response);
????????????return;
????????}
????????//處理文件名
????????String?realname?=?fileName.substring(fileName.indexOf(“_“)+1);
????????//設(shè)置響應(yīng)頭,控制瀏覽器下載該文件
????????response.setHeader(“content-disposition“?“attachment;filename=“?+?URLEncoder.encode(realname?“UTF-8“));
????????//讀取要下載的文件,保存到文件輸入流
????????FileInputStream?in?=?new?FileInputStream(path?+?“\\“?+?fileName);
????????//創(chuàng)建輸出流
????????OutputStream?out?=?response.getOutputStream();
????????//創(chuàng)建緩沖區(qū)
????????byte?buffer[]?=?new?byte[1024];
????????int?len?=?0;
????????//循環(huán)將輸入流中的內(nèi)容讀取到緩沖區(qū)當(dāng)中
????????while((len=in.read(buffer))>0){
????????????//輸出緩沖區(qū)的內(nèi)容到瀏覽器,實(shí)現(xiàn)文件下載
????????????out.write(buffer?0?len);
????????}
????????//關(guān)閉文件輸入流
????????in.close();
????????//關(guān)閉輸出流
????????out.close();
????}
????
????/**
????*?@Method:?findFileSavePathByFileName
????*?@Description:?通過文件名和存儲上傳文件根目錄找出要下載的文件的所在路徑
????*?@Anthor:孤傲蒼狼
????*?@param?filename?要下載的文件名
????*?@param?saveRootPath?上傳文件保存的根目錄,也就是/WEB-INF/upload目錄
????*?@return?要下載的文件的存儲目錄
????*/?
????public?String?findFileSavePathByFileName(String?filenameString?saveRootPath){
????????int?hashcode?=?filename.hashCode();
????????int?dir1?=?hashcode&0xf;??//0--15
????????int?dir2?=?(hashcode&0xf0)>>4;??//0-15
????????String?dir?=?saveRootPath?+?“\\“?+?dir1?+?“\\“?+?dir2;??//upload\2\3??upload\3\5
????????File?file?=?new?File(dir);
????????if(!file.exists()){
????????????//創(chuàng)建目錄
????????????file.mkdirs();
????????}
????????return?dir;
????}
????
????public?void?doPost(HttpServletRequest?request?HttpServletResponse?response)
????????????throws?ServletException?IOException?{
????????doGet(request?response);
????}
}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????845??2017-05-08?18:10??FileUploadAndDownLoad\.classpath

?????文件???????1054??2017-05-08?18:10??FileUploadAndDownLoad\.project

?????文件????????503??2017-05-08?18:10??FileUploadAndDownLoad\.settings\.jsdtscope

?????文件????????364??2017-05-08?18:10??FileUploadAndDownLoad\.settings\org.eclipse.jdt.core.prefs

?????文件????????515??2017-05-08?18:10??FileUploadAndDownLoad\.settings\org.eclipse.wst.common.component

?????文件????????349??2017-05-08?18:10??FileUploadAndDownLoad\.settings\org.eclipse.wst.common.project.facet.core.xml

?????文件?????????49??2017-05-08?18:10??FileUploadAndDownLoad\.settings\org.eclipse.wst.jsdt.ui.superType.container

?????文件??????????6??2017-05-08?18:10??FileUploadAndDownLoad\.settings\org.eclipse.wst.jsdt.ui.superType.name

?????文件???????3616??2017-05-08?19:33??FileUploadAndDownLoad\build\classes\me\gacl\web\controller\DownLoadServlet.class

?????文件???????2602??2017-05-08?19:33??FileUploadAndDownLoad\build\classes\me\gacl\web\controller\ListFileServlet.class

?????文件???????1280??2017-05-08?19:33??FileUploadAndDownLoad\build\classes\me\gacl\web\controller\UploadHandleServlet$1.class

?????文件???????6621??2017-05-08?19:33??FileUploadAndDownLoad\build\classes\me\gacl\web\controller\UploadHandleServlet.class

?????文件???????3214??2017-05-08?19:24??FileUploadAndDownLoad\src\me\gacl\web\controller\DownLoadServlet.java

?????文件???????2753??2017-05-08?19:24??FileUploadAndDownLoad\src\me\gacl\web\controller\ListFileServlet.java

?????文件???????9690??2017-05-08?19:00??FileUploadAndDownLoad\src\me\gacl\web\controller\UploadHandleServlet.java

?????文件????????644??2017-05-08?19:59??FileUploadAndDownLoad\WebContent\listfile.jsp

?????文件????????180??2017-05-08?18:47??FileUploadAndDownLoad\WebContent\message.jsp

?????文件?????????39??2017-05-08?18:10??FileUploadAndDownLoad\WebContent\meta-INF\MANIFEST.MF

?????文件????????538??2017-05-08?18:47??FileUploadAndDownLoad\WebContent\upload.jsp

?????文件??????57779??2017-05-08?18:11??FileUploadAndDownLoad\WebContent\WEB-INF\lib\commons-fileupload-1.2.1.jar

?????文件??????87776??2017-05-08?18:11??FileUploadAndDownLoad\WebContent\WEB-INF\lib\commons-io-1.3.2.jar

?????文件?????414240??2017-05-08?19:29??FileUploadAndDownLoad\WebContent\WEB-INF\lib\jstl-1.2.jar

?????文件?????393259??2017-05-08?19:33??FileUploadAndDownLoad\WebContent\WEB-INF\lib\standard.jar

?????文件???????2254??2017-05-08?19:59??FileUploadAndDownLoad\WebContent\WEB-INF\web.xml

?????目錄??????????0??2017-05-08?20:35??FileUploadAndDownLoad\build\classes\me\gacl\web\controller

?????目錄??????????0??2017-05-08?20:35??FileUploadAndDownLoad\build\classes\me\gacl\web

?????目錄??????????0??2017-05-08?20:35??FileUploadAndDownLoad\src\me\gacl\web\controller

?????目錄??????????0??2017-05-08?20:35??FileUploadAndDownLoad\build\classes\me\gacl

?????目錄??????????0??2017-05-08?20:35??FileUploadAndDownLoad\src\me\gacl\web

?????目錄??????????0??2017-05-08?20:35??FileUploadAndDownLoad\build\classes\me

............此處省略14個文件信息

評論

共有 條評論