2021-03-09-java-Servlet版文件上传下载小结

为什么会出现

  • 人信息的管理,上传头像
  • 商品信息的管理,上传商品的图片
  • 等等

导入jar包

  • Apache专门提供了一个表单文件的上传的组件(commons-upload)
  • 还要导入一个依赖包commons-io.jar
  • BeanUtils.jar,把map中的的数据拷贝到JavaBean中

表单

  • 请求方式必须是post
  • 表单中要有上传文件的组件
  • 表单必须设置enctype=“multipart/form-data”

上传文件需要的对象

  • DiskFileItemFactory:文件上传的一个工程类
  • ServletFileUpload:上传文件的最核心的一个类
  • IOUtils:文件拷贝的工具类
  • BeanUtils:对象拷贝的一个工具类
  • FileItem:表单属性的操作类

案例

  • 单个文件上传:文件名称重复的文件
  • 多个文件上传
  • 表单中多元素上传:表单中存在多选框的问题

文件下载

  • 以流的方式进行下载
  • 需要设置响应头
response.setContentType("application/x-msdownload");
response.setHeader("Content-Disposition", "attachment;filename="+fileName);
  • 下载文件中文乱码的问题

你可能感兴趣的:(java,java)