資源簡介
javaweb實現圖片上傳,圖片加載,圖片顯示,圖片按照任意高寬比例顯示,其中上傳的圖片保存在服務器上

代碼片段和文件信息
package?a1;
import?java.io.File;
import?java.io.IOException;
import?java.util.HashMap;
import?java.util.Map;
import?javax.servlet.ServletException;
import?javax.servlet.http.HttpServlet;
import?javax.servlet.http.HttpServletRequest;
import?javax.servlet.http.HttpServletResponse;
/**
*?@ClassName:?ListFileServlet
*?@Description:?列出Web系統中所有下載文件
*?@author:?孤傲蒼狼
*?@date:?2015-1-4?下午9:54:40
*
*/?
public?class?ListFileServlet?extends?HttpServlet?{
????public?void?doGet(HttpServletRequest?request?HttpServletResponse?response)
????????????throws?ServletException?IOException?{
????????//獲取上傳文件的目錄
????????String?uploadFilePath?=?this.getServletContext().getRealPath(“e:\\files\\“);
????????//存儲要下載的文件名
????????Map?fileNameMap?=?new?HashMap();
????????//遞歸遍歷filepath目錄下的所有文件和目錄,將文件的文件名存儲到map集合中
????????listfile(new?File(uploadFilePath)fileNameMap);//File既可以代表一個文件也可以代表一個目錄
????????//將Map集合發送到listfile.jsp頁面進行顯示
????????request.setAttribute(“fileNameMap“?fileNameMap);
????????request.getRequestDispatcher(“/listfile.jsp“).forward(request?response);
????}
????
????/**
????*?@Method:?listfile
????*?@Description:?遞歸遍歷指定目錄下的所有文件
????*?@param?file?即代表一個文件,也代表一個文件目錄
????*?@param?map?存儲文件名的Map集合
????*/?
????public?void?listfile(File?fileMap?map){
????????//如果file代表的不是一個文件,而是一個目錄
????????if(!file.isFile()){
????????????//列出該目錄下的所有文件和目錄
????????????File?files[]?=?file.listFiles();
????????????//遍歷files[]數組
????????????for(File?f?:?files){
????????????????//遞歸
????????????????listfile(fmap);
????????????}
????????}else{
????????????/**
?????????????*?處理文件名,上傳后的文件是以uuid_文件名的形式去重新命名的,去除文件名的uuid_部分
????????????????file.getName().indexOf(“_“)檢索字符串中第一次出現“_“字符的位置,如果文件名類似于:9349249849-88343-8344_阿_凡_達.avi
????????????????那么file.getName().substring(file.getName().indexOf(“_“)+1)處理之后就可以得到阿_凡_達.avi部分
?????????????*/
????????????String?realName?=?file.getName().substring(file.getName().indexOf(“_“)+1);
????????????//file.getName()得到的是文件的原始名稱,這個名稱是唯一的,因此可以作為key,realName是處理過后的名稱,有可能會重復
????????????map.put(file.getName()?realName);
????????}
????}
????
????public?void?doPost(HttpServletRequest?request?HttpServletResponse?response)
????????????throws?ServletException?IOException?{
????????doGet(request?response);
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-11-22?17:35??a1\
?????文件????????1140??2017-11-15?20:34??a1\.classpath
?????文件????????1327??2017-11-15?20:38??a1\.project
?????目錄???????????0??2017-11-15?20:37??a1\.settings\
?????文件?????????522??2017-11-15?20:34??a1\.settings\.jsdtscope
?????文件?????????104??2017-11-22?15:08??a1\.settings\org.eclipse.core.resources.prefs
?????文件?????????364??2017-11-15?20:34??a1\.settings\org.eclipse.jdt.core.prefs
?????文件?????????465??2017-11-15?20:34??a1\.settings\org.eclipse.wst.common.component
?????文件?????????398??2017-11-15?20:34??a1\.settings\org.eclipse.wst.common.project.facet.core.xm
?????文件??????????49??2017-11-15?20:34??a1\.settings\org.eclipse.wst.jsdt.ui.superType.container
?????文件???????????6??2017-11-15?20:34??a1\.settings\org.eclipse.wst.jsdt.ui.superType.name
?????文件????????9412??2010-11-10?16:58??a1\head.png
?????目錄???????????0??2017-11-15?20:49??a1\src\
?????目錄???????????0??2017-11-22?17:32??a1\src\a1\
?????文件????????2634??2017-11-22?10:37??a1\src\a1\ListFileServlet.java
?????文件????????2809??2017-11-22?10:43??a1\src\a1\SimpleFileupload.java
?????文件????????2221??2017-11-22?17:32??a1\src\a1\SimpleUpload.java
?????目錄???????????0??2017-11-22?17:35??a1\WebRoot\
?????文件?????????732??2017-11-22?16:44??a1\WebRoot\index.jsp
?????文件????????1760??2017-11-22?16:52??a1\WebRoot\listfile.jsp
?????目錄???????????0??2017-11-15?20:34??a1\WebRoot\me
?????文件??????????39??2017-11-15?20:34??a1\WebRoot\me
?????文件?????????558??2017-11-22?16:44??a1\WebRoot\show.jsp
?????文件????????1296??2017-11-22?17:34??a1\WebRoot\simpleupload.jsp
?????目錄???????????0??2017-11-22?17:35??a1\WebRoot\WEB-INF\
?????目錄???????????0??2017-11-22?15:07??a1\WebRoot\WEB-INF\classes\
?????目錄???????????0??2017-11-22?17:32??a1\WebRoot\WEB-INF\classes\a1\
?????文件????????2496??2017-11-22?15:07??a1\WebRoot\WEB-INF\classes\a1\ListFileServlet.class
?????文件????????3839??2017-11-22?15:07??a1\WebRoot\WEB-INF\classes\a1\SimpleFileupload.class
?????文件????????3507??2017-11-22?17:32??a1\WebRoot\WEB-INF\classes\a1\SimpleUpload.class
?????目錄???????????0??2017-11-15?21:13??a1\WebRoot\WEB-INF\lib\
............此處省略2個文件信息
評論
共有 條評論