文件上传与下载

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件上传与下载相关的知识,希望对你有一定的参考价值。

文件上传概述

  - 实现web开发中的文件上传功能,需完成如下二步操作:

      1. 在web页面中添加上传输入项

      2. 在servlet中读取上传文件的数据,并保存到服务器硬盘中。

 

  - 如何在web页面中添加上传输入项?

    <input type=“file”>标签用于在web页面中添加文件上传输入项,设置文件上传输入项时须注意:

        1. 必须要设置input输入项的name属性,否则浏览器将不会发送上传文件的数据。

        2. 必须把form的enctype属值设为multipart/form-data.设置该值后,浏览器在上传文件时,将把文件数据附带在http请求消息体中,并使用MIME协议对上传的文件进行描述,以方便接收方对上传数据进行解析和处理。

        3. 表单的提交方式要是post

 

  - 如何在Servlet中读取文件上传数据,并保存到本地硬盘中?

      1. Request对象提供了一个getInputStream方法,通过这个方法可以读取到客户端提交过来的数据。但由于用户可能会同时上传多个文件,在servlet端编程直接读取上传数据,并分别解析出相应的文件数据是一项非常麻烦的工作,示例。

      2. 为方便用户处理文件上传数据,Apache 开源组织提供了一个用来处理表单文件上传的一个开源组件( Commons-fileupload ),该组件性能优异,并且其API使用极其简单,可以让开发人员轻松实现web文件上传功能,因此在web开发中实现文件上传功能,通常使用Commons-fileupload组件实现。

 

   - 使用Commons-fileupload组件实现文件上传,需要导入该组件相应的支撑jar包:Commons-fileupload和commons-io。commons-io 不属于文件上传组件的开发jar文件,但Commons-fileupload 组件从1.1 版本开始,它工作时需要commons-io包的支持。

以上是关于文件上传与下载的主要内容,如果未能解决你的问题,请参考以下文章

JavaWeb之实现文件上传与下载

SpringBoot+MyBatisPlus文件上传与文件下载的应用与实现

Java 文件上传与下载email

用java实现文件的上传与下载

文件的上传与下载

SpringMVC---文件上传与下载