文件上传下载学习笔记

文件上传:允许客户将本地文件,上传到服务器端 
应用:上传照片、上传新闻图片、上传附件 

一、文件上传编程
1、在用户页面中添加上传输入项 (客户端页面操作)
<input type="file" />
注意事项:
1) 必须为文件上传input 提供name属性,否则文件上传内容不会被表单提交 
2) 表单的提交是post (get提交数据在url地址上显示,有长度限制) 
3) 设置enctype=multipart 使得文件上传编码 ----- MIME编码格式

2、在服务器端编写文件上传程序
通过request.getInputStream分析文件上传原理 

常用文件上传API : 
1) JSP独立开发年代 jsp-smartupload ---- JSP Model1 
jspSmartUpload是一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。
2) JSP+Servlet 开发web应用 Apache commons-fileupload ---- JSP Model2
FileUpload 是 Apache commons下面的一个子项目,用来实现Java环境下面的文件上传功能,与常见的SmartUpload齐名。
3) Servlet3.0规范中提供对文件上传的支持 

Apache commons-fileupload 使用
1) 去 http://commons.apache.org/fileupload/ 下载fileupload jar包 
同时下载 commons-fileupload 和  commons-io 两个包  -------- fileupload依赖io包 

2) 将jar包导入 web 工程WEB-INF/lib下 
3) 编程实现
步骤一:获得DiskFileItemFactory 文件项工厂
步骤二:通过工厂 获得文件上传请求核心解析类 ServletFileUpload 
步骤三:使用ServletFileUpload对request进行解析  ---- 获得很多个FileItem
步骤四:对每个FileItem进行操作 判断FileItem是不是普通字段 isFormField 
代表普通字段FileItem 
getFieldName();  ---- 获得表单项name属性
getString(); ----- 获得表单项value

代表文件上传FileItem
getInputStream() --- 获得文件内容输入流
getName() ------ 获得上传文件名称

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

ifHappyEveryDay@

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

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

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

打赏作者

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

抵扣说明:

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

余额充值