简述文件上传原理之 JSP - Servlet 篇

文件上传

1.>  主要是对文件上传的操作,执行简要概述。

2.>  所用知识:

        form  jsp  servlet  IO流  xml,主要是这五个知识块;

       (1.) 其中  form 表单用于选择文件,通过属性  enctype 设置属性值为  multipart/form-data 以二进制流上传该文件

       (2.) jsp可以理解为中  form  通过属性  method 属性值post(或get) 设置提交方式为  post(或 get ),两者区别网上有详   细讲解。

       (3.) 服务器端即后台通过  servlet  的 doGet()  doPost() 方法接收二进制流上传文件

       (4.) IO 流,输入流以字节方式读取二进制流,输出流以字节方式写入新建的临时文件中

       (5.) XML用来配置相关文件

3.>    原理:

                    通过 form 表单选择文件,通过 post(get)方法提交,提交文件设置为以二进制流传送给后台servlet

 sevlet通过 IO 输入输出流接收该文件存到一个临时文件夹;

     到此简单的上传已经实现,文件内容在临时文件内。注意设置相应的编码方式以防乱码问题,有中文编码建议

 设置为 utf-8 

4.> 代码展示:

  提交页面 index.jsp,代码如下:

   后台处理 servlet,代码如下:

 

 

  对应的 XML ,代码如下:

 

 

//

 

   运行 tomcat 后,进入文件上传页面,index.jsp,选择一文本文件点击上传按钮,文件内容在 E 盘下临时新建文件 newfile 中。

(本次测试,新建文件选择的路径是 E://newfile。通过记事本打开文件  filename 中间部分为内容,其他为流读取时同步设置的信息。内容在后期下载时会进行从临时文件提取,抛弃非内容数据,并删除临时文件等操作。)

例:我选择的文件为 new.txt 内容:

zjicadsad
你我他
dawa2132
21
3
12
4
342

上传后的临时文件中数据为:

------WebKitFormBoundarycVRGnUO5AteJyDvm
Content-Disposition: form-data; name="File"; filename="new.txt"
Content-Type: text/plain


zjicadsad
你我他
dawa2132
21
3
12
4
342
------WebKitFormBoundarycVRGnUO5AteJyDvm--

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

niaonao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值