spring实现文件上传
来源:互联网 发布:dnf易语言脚本源码 编辑:程序博客网 时间:2024/05/17 08:40
开发步骤:
1.修改jsp页面,增加文件标签,修改enctype="multipart/form-data"
<input name="headURL" type="file" />
2.配置spring mvc框架,支持文件上传
<!-- 文件上传 -->
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 设置上传文件的最大尺寸为5MB -->
<property name="maxUploadSize">
<value>5242880</value>
</property>
</bean>
3.修改Controller类,使用MultipartFile接收上传的文件
//设计一个方法,用于用户提交注册信息时,完成注册信息入口功能
@RequestMapping("/register")
public ModelAndView doReg( HttpServletRequest request, @Validated UserInfo user,BindingResult br ,MultipartFile file1) throws IllegalStateException, IOException{
//注册成功,返回success页面
ModelAndView view = new ModelAndView("success");
if(br.hasErrors()){
view.addObject("errors", br.getAllErrors());//取出校验错误结果,使用view model发送到jsp页面进行显示
view.setViewName("reguser");//发生错误后,需要跳转到哪个页面;本例,返回原来的页面
}else{
//view.addObject("userinfo", user);
view.getModel().put("userinfo", user);
//处理文件上传
//原始名称
String originalFilename = file1.getOriginalFilename();
if(file1 !=null && originalFilename !=null && originalFilename.length()>0) {
//存储图片的物理路径
String basePath= request.getServletContext().getRealPath("/uploads");
//新的图片名称-- 使用UUID算法解决文件名重复问题
String newFileName = UUID.randomUUID() + originalFilename.substring(originalFilename.lastIndexOf("."));
//新图片
File newFile = new File(basePath+File.separatorChar+ newFileName);
//将内存的数据写入磁盘
file1.transferTo(newFile);
//将新图片名称写到users中
user.setHeadURL("uploads/"+ newFileName);
}
}
return view;
}
//注意:上传文件表单域名称不要与服务端保存文件的属性名称一致,否则可能造成名称的冲突
// 本例:UserInfo的headURL属性不要与表单的文件name的值file1相同
4. 调用service业务代码,保存文件在服务器的路径到数据库中 -- 本例略
5.在进行查询页面,显示上传后的图片 - 如何拼接访问图片的URL地址?
<img src="<%=request.getContextPath()+"/" %>${userinfo.headURL }" width="100px">
阅读全文
0 0
- spring实现文件上传
- Spring实现文件上传
- Spring实现文件上传
- spring实现文件上传
- spring实现上传文件
- spring实现文件上传
- 用spring实现文件上传
- Spring MVC 实现文件上传
- spring MVC实现文件上传
- Spring MVC实现文件上传
- Spring中实现文件上传
- Spring中实现文件上传
- spring 文件上传功能实现
- Spring mvc实现文件上传
- spring springmvc实现文件上传
- Spring mvc 实现文件上传
- Spring+Springmvc实现文件上传
- Spring Boot实现文件上传
- grunt 前端自动化构建工具
- 支付宝小程序 border-left不显示
- Mac系统隐藏文件
- 同步阻塞,同步非阻塞,异步阻塞,异步非阻塞 https://www.zhihu.com/question/19732473
- ListView的列表显示
- spring实现文件上传
- Spring思维导图,让Spring不再难懂(cache篇)
- maven中setting.xml的阿里云aliyun镜像配置
- 数学学习的网址【更新】
- Rv+ok+Fresco+mvp
- 自制工具jar包
- 每日一练10
- 在名为商品库的数据库中包含有商品规格表Content和商品特性表Property
- html中a链接的javascript确认框