基于SpringMVC框架的文件上传操作

本文详细介绍如何使用SpringMVC结合commons-fileupload组件实现文件上传功能。从添加依赖、页面表单配置、控制器层处理到配置multipartResolver,一步步解析文件上传的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文件上传
SpringMVC可以采用commons-fileupload实现文件的上传
(1)添加依赖

<dependency>
			<groupId>commons-fileupload</groupId>
			<artifactId>commons-fileupload</artifactId>
			<version>1.3.3</version>
</dependency>

(2)页面部分

 <form action="upload.do" method="post" enctype="multipart/form-data">
   	<input type="file" name="pic"/>
   	<input type="submit" value="上传数据"/>
  </form>
  • 注意请求方式必须为post,因为get请求限制了所提交内容的大小在2kb以内
  • form表单必须设置enctype=“multipart/form-data”

(3)控制器层

  • 在方法的参数中添加一个MultipartFile参数,将上传的对象绑定到此参数上,在这里利用了两个方法:
    getOriginalFilename()//获得上传文件的原名;
    transferTo(dest);把图片写入磁盘中
@RequestMapping(value="upload",method=RequestMethod.POST)
	public String upload(MultipartFile pic,HttpSession session,Model model) throws IllegalStateException, IOException {
		//获得文件所在路径
		String realPath = session.getServletContext().getRealPath("upload/");
		File dd = new File(realPath);
		if (!dd.exists()) {
			dd.mkdirs();
		}
		File dest = new File(realPath,pic.getOriginalFilename());
		pic.transferTo(dest);
		return "info";
	}

(4)在子容器中配置对应的multipartResovler

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值