標籤:save 擷取 ons 實體 為我 request service cti 自己
檔案上傳說白了就是利用form表單request域中上傳資料,後台到Action中解析request域進行檔案擷取和檔案類型以及尾碼解析,過程比較繁瑣,不過這些公用的繁瑣步驟是struts架構已經為我們做好了,只需要按照其規則進行頁面繪製和後台屬性注入即可
1、form表單必須為method="post" enctype="multipart/form-data",得有file標籤
<input type="file" name="upload" />
2、action中定義攔截器規定名字的屬性,File類型的屬性用於接收上傳的檔案內容,檔案名稱得和form表單中的file類型標籤的name一致,後面兩個屬性是struts攔截器用的用於存放檔案名稱和檔案類型的,省得自己再去解析了,要求就是前部分和form表單的name一致,後半部分以FileName結尾或以ContentType結尾
3、在相應Action的方法中就可以直接擷取檔案內容和尾碼以及檔案名稱進行儲存使用,如
if(uploadFileName != null){// 列印System.out.println("檔案類型:"+uploadContentType);// 把檔案的名稱處理一下String uuidname = UploadUtils.getUUIDName(uploadFileName);// 把檔案上傳到D:\\apache-tomcat-7.0.52\\webapps\\uploadString path = "D:\\apache-tomcat-7.0.52\\webapps\\upload\\";// 建立file對象File file = new File(path+uuidname);// 簡單方式FileUtils.copyFile(upload, file);//import org.apache.commons.io.FileUtils;工具類 xxxService.save(pojo); //同時記得把檔案儲存到圖床的位置還得儲存到對應實體的img欄位中,不然回顯不了圖片}
struts2檔案上傳