資源簡介
源碼.zip

代碼片段和文件信息
package?com.ps;
import?org.apache.commons.fileupload.FileItem;
import?org.apache.commons.fileupload.disk.DiskFileItemFactory;
import?org.apache.commons.fileupload.servlet.ServletFileUpload;
import?javax.servlet.ServletException;
import?javax.servlet.annotation.WebServlet;
import?javax.servlet.http.HttpServlet;
import?javax.servlet.http.HttpServletRequest;
import?javax.servlet.http.HttpServletResponse;
import?java.io.File;
import?java.io.IOException;
import?java.util.List;
@WebServlet(name?=?“ceshi1“)
public?class?PhotoServlet?extends?HttpServlet?{
????protected?void?doPost(HttpServletRequest?request?HttpServletResponse?response)?throws?ServletException?IOException?{
????????request.setCharacterEncoding(“utf-8“);??//設置編碼
????????//獲得磁盤文件條目工廠
????????DiskFileItemFactory?factory?=?new?DiskFileItemFactory();
????????//獲取文件需要上傳到的路徑
????????String?path?=?request.getRealPath(“/upload“);
????????File?file=new?File(path);
????????if(!file.exists()){
????????????file.mkdirs();
????????}
????????factory.setRepository(new?File(path));
????????//設置?緩存的大小
????????factory.setSizeThreshold(1024*1024)?;
????????//文件上傳處理
????????ServletFileUpload?upload?=?new?ServletFileUpload(factory);
????????try?{
????????????//可以上傳多個文件
????????????List?list?=?(List)upload.parseRequest(request);
????????????for(FileItem?item?:?list){
????????????????//獲取屬性名字
????????????????String?name?=?item.getFieldName();
????????????????//如果獲取的?表單信息是普通的?文本?信息
????????????????if(item.isFormField()){
????????????????????//獲取用戶具體輸入的字符串因為表單提交過來的是?字符串類型的
????????????????????String?value?=?item.getString()?;
????????????????????request.setAttribute(name?value);
????????????????}else{
????????????????????//獲取路徑名
????????????????????String?value?=?item.getName()?;
????????????????????//索引到最后一個反斜杠
????????????????????int?start?=?value.lastIndexOf(“\\“);
????????????????????//截取?上傳文件的?字符串名字,加1是?去掉反斜杠,
????????????????????String?filename?=?value.substring(start+1);
????????????????????request.setAttribute(name?filename);
????????????????????//寫到磁盤上
????????????????????item.write(?new?File(pathfilename)?);//第三方提供的
????????????????????System.out.println(“上傳成功:“+filename);
????????????????????response.getWriter().print(filename);//將路徑返回給客戶端
????????????????}
????????????}
????????}?catch?(Exception?e)?{
????????????System.out.println(“上傳失敗“);
????????????response.getWriter().print(“上傳失敗:“+e.getMessage());
????????}
????}
????protected?void?doGet(HttpServletRequest?request?HttpServletResponse?response)?throws?ServletException?IOException?{
????????doPost(requestresponse);
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-10-15?19:52??婧愮爜\
?????文件????????6148??2017-10-15?19:49??婧愮爜\.DS_Store
?????目錄???????????0??2017-10-16?08:27??__MACOSX\
?????目錄???????????0??2017-10-16?08:27??__MACOSX\婧愮爜\
?????文件?????????120??2017-10-15?19:49??__MACOSX\婧愮爜\._.DS_Store
?????目錄???????????0??2017-10-15?10:46??婧愮爜\ceshi1\
?????目錄???????????0??2017-10-15?12:18??婧愮爜\ceshi1\.idea\
?????目錄???????????0??2017-10-07?19:48??婧愮爜\ceshi1\.idea\artifacts\
?????文件?????????487??2017-10-07?19:48??婧愮爜\ceshi1\.idea\artifacts\ceshi1_war_exploded.xm
?????文件?????????686??2017-10-07?19:48??婧愮爜\ceshi1\.idea\compiler.xm
?????目錄???????????0??2017-10-07?19:48??婧愮爜\ceshi1\.idea\copyright\
?????文件??????????74??2017-10-07?19:48??婧愮爜\ceshi1\.idea\copyright\profiles_settings.xm
?????目錄???????????0??2017-10-15?10:46??婧愮爜\ceshi1\.idea\libraries\
?????文件?????????328??2017-10-15?10:46??婧愮爜\ceshi1\.idea\libraries\commons_fileupload_1_3_1.xm
?????文件????????3811??2017-10-15?10:06??婧愮爜\ceshi1\.idea\misc.xm
?????文件?????????252??2017-10-07?19:48??婧愮爜\ceshi1\.idea\modules.xm
?????文件???????45538??2017-10-15?12:18??婧愮爜\ceshi1\.idea\workspace.xm
?????文件?????????997??2017-10-15?10:46??婧愮爜\ceshi1\ceshi1.iml
?????目錄???????????0??2017-10-15?10:57??婧愮爜\ceshi1\out\
?????目錄???????????0??2017-10-07?19:49??婧愮爜\ceshi1\out\artifacts\
?????目錄???????????0??2017-10-15?11:36??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\
?????文件?????????195??2017-10-15?19:52??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\index.jsp
?????目錄???????????0??2017-10-15?12:13??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\upload\
?????文件???????11995??2017-10-15?12:13??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\upload\dts_featured_quiet_comfort_qc.png
?????文件??????459187??2017-10-15?12:08??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\upload\Picture_01_Shark.jpg
?????文件??????729422??2017-10-15?11:52??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\upload\Picture_04_Lake.jpg
?????文件????????3729??2017-10-15?11:53??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\upload\screen_lock_27149.png
?????目錄???????????0??2017-10-15?11:30??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\WEB-INF\
?????目錄???????????0??2017-10-15?10:58??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\WEB-INF\classes\
?????目錄???????????0??2017-10-15?10:58??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\WEB-INF\classes\com\
?????目錄???????????0??2017-10-15?11:49??婧愮爜\ceshi1\out\artifacts\ceshi1_war_exploded\WEB-INF\classes\com\ps\
............此處省略1906個文件信息
評論
共有 條評論