javaWeb第六天:基于Apache的fileUploade 组件 ​

简介: javaWeb第六天:基于Apache的fileUploade 组件 ​

主要的目录

✿ 需要掌握的知识点:

     1)基于Apache的fileUploade 组件的上传操作;

     2)文件上传做控制:

     3)文件下载操作:

❀1、上传文件的准备-----上传控件:

2、基于Apache FileUpload 组件:

3,上传文件的控制:

✿ 上传文件的名称:给上传文件起一个唯一的名称:UUID [使用java.util.UUID] :

❀3)抽取文件上传工具方法[工具类]:

✿ 4,文件下载:(三部曲)


✿ 需要掌握的知识点:

     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)抽取文件上传工具方法[工具类]:

      -----------发生错误,进行异常处理-----使用自定义的异常类


0.png


4) :上传文件大小的约束:

    ■ 单个文件大小限制:upload.setFileSizeMax(1024 * 1024 * 2); //2M

    ■  单次请求大小限制:upload.setSizeMax(1024 * 1024 * 2); //2M

 

✿ 4,文件下载:(三部曲)


1.png2.png




目录
相关文章
|
安全 Apache
漏洞扫描与安全加固之Apache Axis组件
漏洞扫描与安全加固之Apache Axis组件
307 0
|
监控 NoSQL 安全
基于Apache组件,分析对象池原理
本文从对象池的一个简单案例切入,主要分析common-pool2组件关于:池、工厂、配置、对象管理几个角色的源码逻辑,并且参考其在Redis中的实践。
191 0
基于Apache组件,分析对象池原理
|
存储 JSON Java
【小家java】Java实用数据结构Pair、MutablePair、ImmutablePair详解(推荐apache的commons组件提供)
【小家java】Java实用数据结构Pair、MutablePair、ImmutablePair详解(推荐apache的commons组件提供)
|
安全 Java Apache
elasticsearch 升级Apache Log4j2组件包
elasticsearch 升级Apache Log4j2组件包
1219 0
|
Web App开发 Java Apache
阿帕奇 Http 组件(Apache HttpComponents)- Apache 翻译过来好像都不认识了吧
Apache HttpComponents 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循“署名-非商业用途-保持一致”创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。
1419 0
|
3月前
|
消息中间件 Kafka Apache
Apache Flink 是一个开源的分布式流处理框架
Apache Flink 是一个开源的分布式流处理框架
597 5
|
2月前
|
消息中间件 API Apache
官宣|阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会
本文整理自阿里云开源大数据平台徐榜江 (雪尽),关于阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会。
1624 2
官宣|阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会
|
2月前
|
SQL Java API
官宣|Apache Flink 1.19 发布公告
Apache Flink PMC(项目管理委员)很高兴地宣布发布 Apache Flink 1.19.0。
1627 2
官宣|Apache Flink 1.19 发布公告
|
2月前
|
SQL Apache 流计算
Apache Flink官方网站提供了关于如何使用Docker进行Flink CDC测试的文档
【2月更文挑战第25天】Apache Flink官方网站提供了关于如何使用Docker进行Flink CDC测试的文档
289 3

推荐镜像

更多