• 文件上传


    文件上传

    概述:

    • 文件上传有两种方式:
      • 使用SmartUpload  上传组件编写相关程序
      • 使用FileUpload   文件上传组件编写相关程序

    两种文件上传组件的比较:

      SmartUpload文件上传组件(推荐使用) FileUpload文件上传组件(不建议使用)
    开发者 www.jspsmart.com  commons.apache.org/fileupload/
    功能
    • 文件上传
    • 文件下载
    • 限制上传文件类型(使用正则表达式实现)
    • 获取上传文件名称、后缀、大小
    • 支持多个文件的上传
     
    编程思路:

    step1,下载该组件

    step2,将相应jar包放置在classpath下或者Tomcat安装目录下的/lib下

    step3,编写相应程序

      • step3.1,编写jsp页面,
        • a,该页面中使用<input type="file">控件,使得点击jsp页面相应按钮
        •      之后会弹出文件选择窗口
        • b,并且将<form>使用enctype封装,使得点击“提交”按钮后
        •   该form中的所有内容都是以二进制方式提交
      • step3.2,编写相应代码接收上传的文件并且保存到特定目录
        • a,使用smartupload组件中提供的相应API去获取上传的文件
        •   并保存
        • b,注意:由于form使用enctype封装成了二进制形式,所以
        •       不能使用request对象获取form表单中的内容,必须使用
        •       smartupload组件所提供的相应API去获取相应表单标签
        •       的值,用request.getParameter()获取不到表单标签的值
        •       因为所有表单元素的值都变成了二进制形式。
        • c,除了上述重点之外,编写文件上传部分代码时还应考虑到
        •      不同用户上传的同名文件会产生“覆盖问题”,所以我们接收了
        •      用户上传文件的请求之后,还应该采取一定的措施对文件进行
        •      重命名,以避免“同名文件覆盖问题”。

     step1,下载该组件以及该组件所依赖的三方组件

      • commons.apache.org/fileupload/上下载fileupload组件
      • commons.apache.org/io/上下载Commons组件的io包  

    step2,将相应jar包放置在classpath下或者Tomcat安装目录下的lib子文件夹下

      •  

    step3,编写相应程序(实现文件上传与下载)

      • step3.1,编写jsp页面
        • a,使用<input type="file">  
        • b,form封装成enctype形式,使得表单元素内容以二进制形式传递给目标页面
      • step3.2,使用fileupload组件提供的相应API接收并保存上传的文件,或者下载文件 
        • a,   
         
         
         
         
         
         
    学习的过程中总会得到一些心得体会,认真地将它们记录下来并分享给每一个愿意花费时间去阅读它们的人,然后意外地收获某个读者的评论,从而激发出新的感想,是一件十分令人欢快的事。如果你也在研习这方面的知识,欢迎加入到我们的队伍中来,和我们一起进步吧(^_^)
  • 相关阅读:
    读取组合单元格
    Spire.XLS:一款Excel处理神器
    linq
    LINQ语句中的.AsEnumerable() 和 .AsQueryable()的区别
    合并单元格
    web sec / ssd / sshd
    linux——cat之查看cpu信息、显示终端、校验内存.............
    MATLAB mcr lib的环境变量书写
    Linux查看库依赖方法
    判断当前所使用python的版本和来源
  • 原文地址:https://www.cnblogs.com/lxrm/p/6888551.html
Copyright © 2020-2023  润新知