实现这一功能的时候,也是各种百度,谷歌,最终得到了实现,参考的文章也已忘记,如若雷同,请见谅
jsp配置
<form id="userAction_save_do" name="Form1" action="${pageContext.request.contextPath}/document_save.action?&page=1" method="post" enctype="multipart/form-data">
</form>
action配置
/**
* 实现文件上传
*/
// 文件上传需要的三个属性:
private File upload;
private String uploadFileName;
private String uploadContentType;
public void setUpload(File upload) {
this.upload = upload;
}
//get方法,是为了下载框显示相应的文件名字
public String getUploadFileName() {
return uploadFileName;
}
public void setUploadFileName(String uploadFileName) throws Exception {
this.uploadFileName = uploadFileName;
}
public void setUploadContentType(String uploadContentType) {
this.uploadContentType = uploadContentType;
}
// 保存文档的方法:
public String save() throws IOException {
// 将提交的数据添加到数据库中.
//从session中获取用户信息
User existUser=(User)ServletActionContext.getRequest().getSession().getAttribute("existUser");
int uid=existUser.getUid();
// document.setUser(existUser);
document.setDtime(new Date());
// product.setImage(image);
if(upload != null){
//System.out.println("1111111111"+document.getDname()+document.getUser().getUid());
// 将商品图片上传到服务器上.
// 获得上传图片的服务器端路径.
String path = ServletActionContext.getServletContext().getRealPath(
"/documents");
// 创建文件类型对象:
File diskFile = new File(path + "//" + uploadFileName);
// 文件上传:
FileUtils.copyFile(upload, diskFile);
//System.out.println("444444444444444"+uid);
//document.getUser().setUid(uid);
//在document中虽然定义了user对象,但那个对象为空的,必须new一个对象方可传值
User userbean = new User();
//User userbean = document.getUser();
userbean.setUid(uid);
//System.out.println("userbean.Uid"+userbean.getUid());
document.setUser(userbean);
document.setPlace("尚未归档");
document.setState(0);
document.setDimg("documents/" + uploadFileName);
}
//将数据保存到数据库
documentService.save(document);
//System.out.println("222222222222222"+document.getDname()+document.getUser().getUid());
/*
PageBean<Document> pageBean = documentService.findByPage(page,uid);
// 将PageBean存入到值栈中:ActionContext.getContext().getValueStack().set("pageBean", pageBean);
*/
return "saveSuccess";
}
Struts.xml配置
直接返回一个页面