public class Upload extends ActionSupport { PRivate File[] image ; //多個文件 ,如果單個文件 ,就定義成 File image ; private String[] imageFileName ;//多個文件名 ,如果單個文件 ,就定義成 String imageFileName ; private String[] imageContentType ;//多個文的內容類型,如果 單個文件就定義成 String imageContentType get(),set() ..../***其中image為jsp中的File 的name*<input type="file" name="image" /><br />*/ public String execute() throws Exception { String realpath = ServletActionContext.getServletContext().getRealPath("/images") ; System.out.println("Real Path : "+ realpath ); if (image != null){ File savedir = new File(realpath) ; if (! savedir.exists()) { savedir.mkdirs() ; }// File savefile = new File(realpath, this.imageFileName ) ; for (int i = 0; i < image.length; i++){ File savefile = new File(realpath, imageFileName[i]) ; FileUtils.copyFile(image[i], savefile) ; System.out.println(imageContentType[i]); } ActionContext.getContext().put("message", "上傳成功:" + realpath) ; } return SUCCESS ; }}方法一:
ActionContext ctx=ActionContext.getContext();
HttpServletRequest request=(HttpServletRequest)ctx.get(ServletActionContext.HTTP_REQUEST);
HttpServletResponse response=(HttpServletResponse)ctx.get(ServletActionContext.HTTP_RESPONSE);
方法二:
HttpServletRequest request=ServletActionContext.getRequest();HttpServletResponse response=ServletActionContext.getResponse();
方法三:
實現ServletRequestAware接口,并實現
public void setServletRequest(HttpServletRequest request) ;方法
public String addLinkMan() throws IOException { //判斷是否需要上傳文件 if(upload != null) {//上傳 //上傳邏輯 //1 在服務器文件夾里面創建文件 File serverFile = new File("I://crm"+"/"+uploadFileName); //2 把本地文件復制到服務器文件中 //提供工具類,直接調用工具類方法實現 //兩個參數:第一個參數本地文件,第二個參數服務器文件 FileUtils.copyFile(upload, serverFile); } //獲取選擇客戶的cid值// String scid = ServletActionContext.getRequest().getParameter("cid");// // cid如何處理// // 把cid值封裝到linkman對象里面// // 把cid放到linkman的customer對象里面// int cid = Integer.parseInt(scid);// //放到customer里面// Customer c = new Customer();// c.setCid(cid);// //把c放到linkman里面// linkMan.setCustomer(c); //調用service的方法聯系人信息添加到數據庫里面 linkManService.add(linkMan); return "addLinkMan"; }
新聞熱點
疑難解答