SpringMVC 文件上传、多文件上传及文件下载

SpringMVC的文件上传问题,使用文件上传的第三方组件apache下的:commons-fileupload、commons-io

关于文件上传的组件还有cos、jspsmartupload

单个文件上传

使用SpringMVC封装好的文件上传组件进行文件上传的步骤:

一、首先编写简单的前台代码

action:作为请求路径

method:必须用post

enctype:必须用multipart/form-data(将文件以二进制的形式上传,可以实现多种类型的文件上传 ;

application/x-www-form-urlencoded只能上传文本格式的文件
input控件类型为file,添加一个name属性


二、后台代码

1、在pom.xml中添加文件上传的依赖

2、在springMVC配置文件springmvc-servlet中添加文件上传的类

在springmvc中专门封装了一个类CommonsMultipartResolver来处理文件上传


3、在spring配置文件中添加bean


4、controller中的代码编写


三、文件上传应该注意的地方

文件上传并不是直接上传到IDE工程目录下而是上传到部署目录

1、eclipse默认的目录


2、自己更改tomcat的部署目录

当这里为灰色不能修改时,关闭tomcat,remove tomcat下的工程,右键clean就可以更改了


多个文件上传

在单个文件上传的基础上实现多文件上传,多文件上传时如果只选择其中两个上传可能会上传成功但是后台会报错,需要在后台加入一个不为空的判断

1、前台代码只需要增加两个input file控件,并且有一样的name属性


2、后台需要MultipartFile接收数组参数(一定要有注解@RequestParam)  然后遍历(这里不再需要request转型)


文件下载

1、前台<a>标签预览图片(注意图片的地址,我这个是工程下的),表单的action中要带参数,参数名要和后台接收的参数名一致,参数值为文件名



2、后台文件名不能为空(注解@RequestParam不能设置required=false) 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值