javaWeb第六天:基于Apache的fileUploade 组件
主要的目录
1)基于Apache的fileUploade 组件的上传操作;
✿ 上传文件的名称:给上传文件起一个唯一的名称:UUID [使用java.util.UUID] :
✿ 需要掌握的知识点:
1)基于Apache的fileUploade 组件的上传操作;
2)文件上传做控制:
① 文件名的处理:使用java.util.UUID 获得通用唯一标识符;
② 上传文件的类型约束和上传文件的大小限制【若是将上传文件的功能封装到一个工具类的话,异常处理-----使用自定义的异常类】
3)文件下载操作:
文件下载-----设置文件下载的名称[尤其是中文文件名称]、弹出保存的提示框
❀1、上传文件的准备-----上传控件:
<form method="post" enctype="multipart/form-data"> <input type="file" name="headImg"/> </form> |
2、基于Apache FileUpload 组件:
1)依赖的jar包:commons-fileupload.jar commons-io.jar
2) 自学—参考文档的User guide [找到最简单的例子然后跑起来]
3,上传文件的控制:
1)文件名处理:
■ IE6问题: 通过FileItem.getName方法获取上传文件的名称,此时会带上路径
□ 其他浏览器: bird.png □ IE6: D:\123\bird.png
----------------------------解决:使用FilenameUtils.getName(path);
✿ 上传文件的名称:给上传文件起一个唯一的名称:UUID [使用java.util.UUID] :
String fileName = UUID.randomUUID() + "." + FilenameUtils.getExtension(item.getName( ));
■ 上传文件的保存路径:一般是把上传文件保存到应用里。
2)缓存大小和临时文件:
---------超过多少就不直接存放到内存[缓存大小],默认值是10kb;
---------不放在内存中,会放到的位置[临时目录],默认是Tomcat根/temp目录,不建议修改。
❀3)抽取文件上传工具方法[工具类]:
-----------发生错误,进行异常处理-----使用自定义的异常类
4) :上传文件大小的约束:
■ 单个文件大小限制:upload.setFileSizeMax(1024 * 1024 * 2); //2M
■ 单次请求大小限制:upload.setSizeMax(1024 * 1024 * 2); //2M
✿ 4,文件下载:(三部曲)
本文来自博客园,作者:一乐乐,转载请注明原文链接:https://www.cnblogs.com/shan333/p/15899796.html