java code part:
public
ActionForward save(ActionMapping actionMapping,
ActionForm actionForm, HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) throws Exception ... {
DynaActionForm daf = (DynaActionForm) actionForm;
User user = (User) daf.get("user");
String id = user.getId();
//只保存上传路径
FormFile theFile=(FormFile)daf.get("theFile");
if(!theFile.getFileName().equals(""))...{
try...{
InputStream stream=theFile.getInputStream();
String filePath = this.getServlet().getServletContext().getRealPath("/");
filePath=filePath+"/images/userphoto/";
OutputStream bos=new FileOutputStream(filePath+theFile.getFileName());
int bytesRead=0;
byte[] buffer=new byte[8192];
while((bytesRead=stream.read(buffer,0,8192))!=-1)...{
bos.write(buffer,0,bytesRead);
}
bos.close();
stream.close();
}catch(Exception e)...{
System.err.print(e);
}
user.setPhoto("images/userphoto/"+theFile.getFileName());
}
userservice.insertUser(user);
return actionMapping.findForward("UserList");
}
ActionForm actionForm, HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) throws Exception ... {
DynaActionForm daf = (DynaActionForm) actionForm;
User user = (User) daf.get("user");
String id = user.getId();
//只保存上传路径
FormFile theFile=(FormFile)daf.get("theFile");
if(!theFile.getFileName().equals(""))...{
try...{
InputStream stream=theFile.getInputStream();
String filePath = this.getServlet().getServletContext().getRealPath("/");
filePath=filePath+"/images/userphoto/";
OutputStream bos=new FileOutputStream(filePath+theFile.getFileName());
int bytesRead=0;
byte[] buffer=new byte[8192];
while((bytesRead=stream.read(buffer,0,8192))!=-1)...{
bos.write(buffer,0,bytesRead);
}
bos.close();
stream.close();
}catch(Exception e)...{
System.err.print(e);
}
user.setPhoto("images/userphoto/"+theFile.getFileName());
}
userservice.insertUser(user);
return actionMapping.findForward("UserList");
}
web page part:
<
html:form
action
="/userAction.do?method=save"
styleId ="userForm" method ="post" enctype ="multipart/form-data" >
< html:hidden property ="user.id" />
< html:file styleClass ="BOX" property ="theFile" />
</ html:form >
styleId ="userForm" method ="post" enctype ="multipart/form-data" >
< html:hidden property ="user.id" />
< html:file styleClass ="BOX" property ="theFile" />
</ html:form >
config part:
struts-config.xml
<
form-bean
dynamic
="true"
name
="userForm"
type ="org.apache.struts.action.DynaActionForm" >
< form-property name ="user"
type ="com.ttech.user.domain.User" />
< form-property name ="theFile" type ="org.apache.struts.upload.FormFile" />
</ form-bean >
type ="org.apache.struts.action.DynaActionForm" >
< form-property name ="user"
type ="com.ttech.user.domain.User" />
< form-property name ="theFile" type ="org.apache.struts.upload.FormFile" />
</ form-bean >