一、文件三种上传方案
1 SmartUpload 用的最多的一个组件,已经不再更新了,可以实现上传和下载
2 FileUpload Apache实现的文件上传组件,功能齐备
3 J2KUpload java2000实现的文件上传组件,全部使用内存,适合多个不超过10M的小文件
二、文件上传&下载实例
1、文件上传
注:前三个变量的变量名是Struts2里固定的,不能更改并需要提供set/get方法
文件上传jsp代码:
注:enctype=“multipart/form-data” method="post"是固定的,声明表单是特殊的提交方式
2、获取图片真实路径
3、图片展示
4、文件下载
附加:
-
内容类型
response.setContentType(d.getMime()); -
设置响应头
response.setHeader(“Content-Disposition”,“attachment;filename=” + fileName);//文件名 -
处理文件名的中文乱码
String fileName = d.getFileName();
fileName = new String(fileName.getBytes(“utf-8”), “iso8859-1”); -
struts2文件上传大小设置
-
struts2文件上传类型设置
image/png,image/gif,image/jpeg
根据struts2自带的fileupload拦截器中提供的allowedTypes来进行限制