返回信息流文件上传没问题,只是只有当tomcat重启动后文件才真正被写入本地磁盘,应该怎么解决呢?先多谢了!Spring代理类及action如下
package impl;
import dao.*;
import java.io.*;
public class FileDAOimpl implements FileDAO{
public String filename;
public File file;
public void setFilename(String filename){
this.filename=filename;
}
public String getFilename(){
return filename;
}
public void setFile(File file){
this.file=file;
}
public File getFile(){
return file;
}
public void deletefile(String filename)throws Exception {
File f=new File(filename);
f.delete();// TODO Auto-generated method stub
}
public void save(String filename,File file)throws Exception{
FileOutputStream fos=new FileOutputStream(filename);
InputStream is=new FileInputStream(file);
byte [] buffer=new byte[8192];
int count=0;
while((count=is.read(buffer))>0){
fos.write(buffer,0,count);
}
fos.close();
is.close();// TODO Auto-generated method stub
}
}
action的execute()部分
public String execute()throws Exception{
String fn="";
if(filename.equals("")) fn=uploadPath+uploadFileName;
else fn=uploadPath+filename;
if(new File(fn).exists()) result="该文件已经存在";
else{
ApplicationContext context=new FileSystemXmlApplicationContext("D:\\myeclipse\\workspace\\fileupload\\src\\applicationContext.xml");
FileDAO file=(FileDAO)context.getBean("files");
file.save(fn,upload);
File files=new File("D:\\myeclipse\\workspace\\fileupload\\WebRoot\\file\\");
File[] filename=files.listFiles();
for(int i=0;i<filename.length;i++){
result=filename[i].getName()+" "+result;
}
//result="上传成功!";
}
这是一条镜像帖。来源:北邮人论坛 / java / #17486同步于 2011/3/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
[求助]tomcat6+Struts2+Spring实现文件上传时的问题
likaibupt1
2011/3/13镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。