tags: 纳税服务系统项目
用户模块:本文主要的知识点:

Action给出对应的属性值,和setter()方法
/*************上传头像************************/
private File headImg;
private String headImgFileName;
private String headImgContentType;
public void setHeadImg(File headImg) {
this.headImg = headImg;
}
public void setHeadImgFileName(String headImgFileName) {
this.headImgFileName = headImgFileName;
}
public void setHeadImgContentType(String headImgContentType) {
this.headImgContentType = headImgContentType;
}
Action业务方法
public String add() throws IOException {
if (user != null) {
//判断用户有没有传入头像
if (headImg != null) {
//得到要把头像上传到服务器的路径
javax.servlet.ServletContext servletContext = ServletActionContext.getServletContext();
String realPath = servletContext.getRealPath("upload/user");
//由于用户上传的名字可能会相同,如果相同就被覆盖掉,因此我们要修改上传文件的名字【独一无二】
headImgFileName = UUID.randomUUID().toString() + headImgFileName.substring(headImgFileName.lastIndexOf("."));
FileUtils.copyFile(headImg, new File(realPath, headImgFileName));
}
//设置图片与用户的关系
user.setHeadImg(headImgFileName);
userServiceImpl.save(user);
//跳转到列表显示页面
return "list";
}
return null;
} 效果: 

在编辑显示的时候,需要判断该用户是否有没有上传图片,有的话才显示。不然就会出现一张无法显示的图片。
" width="100" height="100"/>
Action处理 用户修改时,Action的处理和新增是一样的。也是判断JSP页面有没有把图片带过来,如果有,修改就行了。
public String edit() throws IOException {
//Struts2会自动把JSP带过来的数据封装到User对象上
if (user.getId() != null && user != null) {
if (headImg != null) {
//得到要把头像上传到服务器的路径
javax.servlet.ServletContext servletContext = ServletActionContext.getServletContext();
String realPath = servletContext.getRealPath("upload/user");
//由于用户上传的名字可能会相同,如果相同就被覆盖掉,因此我们要修改上传文件的名字【独一无二】
headImgFileName = UUID.randomUUID().toString() + headImgFileName.substring(headImgFileName.lastIndexOf("."));
FileUtils.copyFile(headImg, new File(realPath, headImgFileName));
//设置图片与用户的关系
user.setHeadImg(headImgFileName);
}
userServiceImpl.update(user);
}
return "list";
} 效果: 
这一篇几乎都是我们经常用的知识点,只是CRUD而已了。
如果文章有错的地方欢迎指正,大家互相交流。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3676/viewspace-2799926/ ,如需转载,请注明出处,否则将追究法律责任。