久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

文件上傳

 蹇勝雄 2015-07-10
1,、上傳文件(擴展)
(1)編程步驟
step1,設(shè)置表單的提交方式為"post",還要設(shè)置表單的enctype屬性值為"multipart/form-data";
 比如:<form action="" method="post"enctype="multipart/form-data">
 
step2,在服務(wù)器端,不能夠使用request.getParameter方法了,,要使用InputStream request.getInputStream方法,。
 此時,需要分析InputStream。一般使用一些工具(比如,apache提供的commons-fileupload)來分析這個InputStream,。
-------------------------------------------------------------------------------------------------  
package web;

import java.io.File;
import java.io.IOException;
import java.util.List;

import javax.servlet.ServletContext;
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;

public class FileUploadServlet extends HttpServlet {

public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//factory對象為解析器提供解析時的一些缺省的配置
DiskFileItemFactory factory = new DiskFileItemFactory();
//創(chuàng)建一個解析器
ServletFileUpload sfu = new ServletFileUpload(factory);
//使用解析器解析inputStream
try {
/*
* 解析器將每一個表單域中的數(shù)據(jù)
* 封裝到一個FileItem對象里面,。
*/
List<FileItem> items = sfu.parseRequest(request);
/*
* 只需要遍歷List<FileItem>集合,就可以
* 讀取每一個表單域中的數(shù)據(jù),。
*/
for(int i=0;i<items.size();i++){
FileItem item = items.get(i);
if(item.isFormField()){
//普通的表單域
String uname = item.getString();
System.out.println(uname);
}else{
//上傳文件域
ServletContext sctx = getServletContext();
//依據(jù)邏輯路徑獲得實際部署時的物理路徑
String path = sctx.getRealPath("upload");
System.out.println("path:" + path);
//獲得上傳文件的名稱
String filename = item.getName();
/*fileupload工具有一個bug,在某些操作系統(tǒng)上運行時,,filename會包含路徑,比如
d:\czh\man1.jpg
*/
filename = filename.substring(filename.lastIndexOf("/") + 1);
System.out.println("filename:" + filename);
File file = new File(path +File.separator + filename);
item.write(file);
}
}
} catch (Exception e) {
e.printStackTrace();
throw new ServletException(e);
}
}

}

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多