資源簡介
java web文件上傳與下載的小例子 喜歡的同學可以參考一下

代碼片段和文件信息
package?com.java.servlet;
import?java.io.File;
import?java.io.FileOutputStream;
import?java.io.IOException;
import?java.io.InputStream;
import?java.io.OutputStream;
import?java.util.List;
import?javax.servlet.ServletException;
import?javax.servlet.http.HttpServlet;
import?javax.servlet.http.HttpServletRequest;
import?javax.servlet.http.HttpServletResponse;
import?org.apache.commons.fileupload.FileItem;
import?org.apache.commons.fileupload.disk.DiskFileItemFactory;
import?org.apache.commons.fileupload.servlet.ServletFileUpload;
/**
?*?
?*?@author?zero
?*
?*/
public?class?UploadHandleServlet?extends?HttpServlet?{
@Override
protected?void?doGet(HttpServletRequest?req?HttpServletResponse?resp)
throws?ServletException?IOException?{
System.out.println(“get?the?request?from?the?page....“);
String?path?=?req.getRealPath(“/upload“);//create?a?path?to?save?the?file?uploaded
System.out.println(path);
File?file?=?new?File(path);
file.mkdirs();
??
????????DiskFileItemFactory?factory?=?new?DiskFileItemFactory();??
????????factory.setRepository(file);???//set?temporary?file
?? factory.setSizeThreshold(1024*1024);//set?temporary?file‘s?size
??
?? ServletFileUpload?upload?=?new?ServletFileUpload(factory);
?? upload.setHeaderEncoding(“UTF-8“);//set?the?encoding?language
??
?? try?{
?? List?list?=?(List)upload.parseRequest(req);??//get?the?item?list?from?the?from?label
??
?? for(FileItem?item?:?list)?{
?? String?name?=?item.getFieldName();???//get?the?file(field?or?real?file)‘s?name
?? if(item.isFormField())?{
System.out.println(“just?a?simple?field....“);
String?value?=?item.getString();
System.out.println(name?+?“?=?“?+?value?);
?? req.setAttribute(name?value);
?? }else{
?? ?String?value?=?item.getName();//this?item?is?real?file
?? ?
System.out.println(“got?a?real?file“);??
?? ?int?start?=?value.lastIndexOf(“\\“);
?? ?String?filename?=?value.substring(start+1);//獲得真正的文件名字,通常這一步轉化只有在使用Opera瀏覽器時才需要使用
?? ?
System.out.println(“file?name?:?“?+?filename);
??
?? ?req.setAttribute(name??filename);
??
?? ?File?f1?=?new?File(pathfilename);
?? ?
?? ?OutputStream?os?=?new?FileOutputStream(f1);
?? ?InputStream?is?=?item.getInputStream();
?? ?
?? ?byte[]?buffer?=?new?byte[400];
?? ?int?length;
?? ?
?? ?while((length?=?is.read(buffer))!=-1)?{
?? ?os.write(buffer?0?length);
?? ?}
?? ?
?? ?is.close();
?? ?os.close();
System.out.println(“generate?a?file?in?the?server.....“);
?? ?? ?? req.getRequestDispatcher(“index.jsp?&fileName=upload/“?+?filename).forward(req?resp);
?? }
?? }
?? }catch(Exception?e)?{
?? e.printStackTrace();
?? }
??
}
@Override
protected?void?doPost(HttpServletRequest?req?HttpServletResponse?resp){
try?{
doGet(req?resp);
}?catch?(ServletException?e)?{
e.printStack
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-03-30?19:03??FileUploadDownLoad\
?????文件?????????853??2015-03-30?19:03??FileUploadDownLoad\.classpath
?????文件????????1343??2015-03-30?19:09??FileUploadDownLoad\.project
?????目錄???????????0??2015-03-30?19:03??FileUploadDownLoad\.settings\
?????文件?????????522??2015-03-30?19:03??FileUploadDownLoad\.settings\.jsdtscope
?????文件?????????364??2015-03-30?19:03??FileUploadDownLoad\.settings\org.eclipse.jdt.core.prefs
?????文件?????????515??2015-03-30?19:03??FileUploadDownLoad\.settings\org.eclipse.wst.common.component
?????文件?????????348??2015-03-30?19:03??FileUploadDownLoad\.settings\org.eclipse.wst.common.project.facet.core.xm
?????文件??????????49??2015-03-30?19:03??FileUploadDownLoad\.settings\org.eclipse.wst.jsdt.ui.superType.container
?????文件???????????6??2015-03-30?19:03??FileUploadDownLoad\.settings\org.eclipse.wst.jsdt.ui.superType.name
?????目錄???????????0??2015-03-30?20:21??FileUploadDownLoad\WebRoot\
?????目錄???????????0??2015-03-30?19:03??FileUploadDownLoad\WebRoot\me
?????文件??????????39??2015-03-30?19:03??FileUploadDownLoad\WebRoot\me
?????目錄???????????0??2015-03-30?19:03??FileUploadDownLoad\WebRoot\WEB-INF\
?????目錄???????????0??2015-03-30?19:12??FileUploadDownLoad\WebRoot\WEB-INF\classes\
?????目錄???????????0??2015-03-30?19:12??FileUploadDownLoad\WebRoot\WEB-INF\classes\com\
?????目錄???????????0??2015-03-30?19:12??FileUploadDownLoad\WebRoot\WEB-INF\classes\com\java\
?????目錄???????????0??2015-03-30?19:12??FileUploadDownLoad\WebRoot\WEB-INF\classes\com\java\servlet\
?????文件????????4599??2015-03-30?21:12??FileUploadDownLoad\WebRoot\WEB-INF\classes\com\java\servlet\UploadHandleServlet.class
?????目錄???????????0??2015-03-30?19:03??FileUploadDownLoad\WebRoot\WEB-INF\lib\
?????文件???????57779??2015-03-30?19:03??FileUploadDownLoad\WebRoot\WEB-INF\lib\commons-fileupload-1.2.1.jar
?????文件???????87776??2015-03-30?19:03??FileUploadDownLoad\WebRoot\WEB-INF\lib\commons-io-1.3.2.jar
?????文件????????1019??2015-03-30?19:45??FileUploadDownLoad\WebRoot\WEB-INF\web.xm
?????文件????????1611??2015-03-30?21:00??FileUploadDownLoad\WebRoot\index.jsp
?????文件??????247351??2015-03-30?20:21??FileUploadDownLoad\WebRoot\jquery-2.1.1.js
?????目錄???????????0??2015-03-30?19:12??FileUploadDownLoad\src\
?????目錄???????????0??2015-03-30?19:12??FileUploadDownLoad\src\com\
?????目錄???????????0??2015-03-30?19:12??FileUploadDownLoad\src\com\java\
?????目錄???????????0??2015-03-30?19:12??FileUploadDownLoad\src\com\java\servlet\
?????文件????????3107??2015-03-30?21:12??FileUploadDownLoad\src\com\java\servlet\UploadHandleServlet.java
- 上一篇:銀行賬戶管理系統 java課程設計 流程圖
- 下一篇:基于JSP的同學錄源代碼
評論
共有 條評論