1. 程式人生 > >JavaWeb(實現文件上傳)(二)

JavaWeb(實現文件上傳)(二)

webtest 緩沖 inf javaweb pre 不出 use ada let

上文中提到了使用servelt服務器讀取到瀏覽器上保存到文件,並將它保存到本地的方法。

首先解決問題一:

G:\eclipse\eclipse\eclipse\worksapceeeeeeee\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\webtest\upload

項目的上傳的路徑是否可以更改?如何更改?

在server服務器中

①移除所有項目

②啟動server服務器

③右鍵tomcat服務器 選擇open 在server option選項卡中

更改部署路徑,

技術分享圖片

設置user tomcat服務器的目錄

然後設置

        String tagDir=getServletContext().getRealPath("/WEB-INF/temp");

想要保存的路徑

技術分享圖片

好重新上傳後解決了 上傳路徑的問題。

這樣就解決了這個問題,將文件上傳到tmp裏面,並且可以自己指定路徑,但是這個創建出來的路徑類似於一個tomcat緩沖的交換區域。

待解決問題二:如何只將需要上傳的文件上傳到指定的路徑,而不出現tomcat的緩沖區。

首先新建一個文件(如果當前文件不存在才新建)

再將這個文件作為輸出流就可以解決了

  File file =new File("D://123");
        if(!file.exists())
        {
        	file.mkdirs();     	
        }
        OutputStream output=new FileOutputStream(new File(file,realFileName));

  

待解決問題三:假如用戶進行惡意上傳文件,比如上傳一個病毒文件上去,該如何防範,如何校驗這個

文件。

-----------------------------------------------------------未完待續----------------------------------------------------------------------------

JavaWeb(實現文件上傳)(二)