zoukankan      html  css  js  c++  java
  • Servlet文件上传和文件下载

    Servlet文件上传文件下载代码实现

    https://github.com/ChangMike/file-download-upload-test/tree/master


    原始的Servlet文件上传

    • 解析原始的http请求数据,截取文件名,截取文件部分
    1. 使用HttpServletRequest的getInputStream获取文件流
    2. 把二进制的文件数据转换为ISO-8859-1的字符串表现形式
    3. 截取文件名,截取文件部分
    4. 保存到服务器的一个路径下

    Servlet3.0文件上传

    Servlet技术出现不久时,文件上传仍然是比较有挑战性的。

    1. 开发者通常会使用商业的文件上传组件。
    2. 值得庆幸的是,Apache于2003年发布了开源Comments FileUpload。
    3. 几年之后,Servlet的设计者才意识到文件上传的重要性,最终,文件上传在Servlet3中成了一项内置的特性。

    实现步骤

    1. Servlet添加@MultipartConfig注解
    2. 使用Part获取文件及文件名
      • Part是一个表单元素,submit按钮也是一个part

    Servlet3.0多上传文件

    1. 使用@MultipartConfig指定上传路径
    2. getParts获取多个文件
    3. Lambda表达式遍历Parts
    4. html5 multiple属性

    Servlet文件下载

    1. 文件只要不是放在WEB-INF目录下,浏览器输入路径可以正确下载
    2. 如果需要权限控制,文件放在WEB-INF目录下
    • 指定响应内容类型
    • 使用Response.getOutputStream获取ServletOutputStream把文件响应给浏览器
  • 相关阅读:
    HDU 2883 kebab
    CSUOJ 1635 Restaurant Ratings
    CSUOJ 1638 Continued Fraction
    POJ 1852 Ants
    ZOJ 3471 Most Powerful
    CSUOJ 1637 Yet Satisfiability Again!
    如何生成CA证书
    Keepalived实现双机热备
    Nginx负载均衡的优缺点
    负载均衡之 nginx
  • 原文地址:https://www.cnblogs.com/Mike_Chang/p/12711510.html
Copyright © 2011-2022 走看看