问题描述
下面是action里面的代码String destfile=ServletActionContext.getServletContext().getRealPath("/")+"img/"+name;InputStream fis=new FileInputStream(tupian);OutputStream fos=new FileOutputStream(destfile);byte [] buffer=new byte[1024];int len=-1;while(true){len=fis.read(buffer);if(len==-1){break;}fos.write(buffer,0,len);}fos.flush();fos.close();warel.setImg("/dcxt/img/"+d.nextLong()+name);这是拦截器<interceptors><interceptor-stack name="mystack"><interceptor-ref name="defaultStack"><param name="validation.excludeMethods">list,toadd,toupdate,delete</param><param name="workflow.excludeMethods">list,toadd,toupdate,delete</param><param name="fileUpload.allowedExtensions">.jpg</param><param name="fileUpload.maximumSize">102400</param></interceptor-ref></interceptor-stack></interceptors><default-interceptor-ref name="mystack"/>
解决方案
上传后都是放到 临时文件夹 并为了防止重复 给它一个随机文件名 你应该获取到之后 复制到你自己的目录中存储