① 文件上传

1.使用fileupload完成上传功能,需要添加commons-fileupload相关Jar包

2.表单提交请求编码类型必须是enctype="multipart/form-data",请求方式必须是post

3.服务器如果是Servlet需要使用fileupload的提供的工具类ServletFileUpload完成文件上传。

4.服务器如果是Spring mvc,通过MultipartFile类型接收上传数据,从而完成文件上传。

                            ②.文件下载

 

1.提供一个超链接,可以下载浏览器不能解析的资源

2.响应头 + 响应流:如果下载资源浏览器可以解析,需要自定义实现类,添加一个下载使用的响应头content-disposition确定下载时浏览器显示的文件名,然后以流的方式将资源响应给浏览器即可

 

文件 第二步

<form action="" method="post" enctype="multipart/form-data">
     <input type="file" name="image">
</form>

文件 第四步

 



import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;


public class FileController {

    @PostMapping
    public void fileupload(MultipartFile image) throws IOException {
        //原始文件,上传文件名
        image.getOriginalFilename();
        //上传内容
        image.getInputStream();
    }
}

 

//下载
public void download(HttpServletResponse response) throws IOException {
    //响应头
    response.setHeader("content-disposition","attachment;filename=mm.jpg");

    //响应内容
    ServletOutputStream out = response.getOutputStream();
    //out.write(....);
}