15.1-上传和下载_课程笔记

15.1-上传和下载_课程笔记

ID:16200369

大小:1.14 MB

页数:29页

时间:2018-08-08

15.1-上传和下载_课程笔记_第1页
15.1-上传和下载_课程笔记_第2页
15.1-上传和下载_课程笔记_第3页
15.1-上传和下载_课程笔记_第4页
15.1-上传和下载_课程笔记_第5页
资源描述:

《15.1-上传和下载_课程笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、文件的上传和下载1.学习目标学习任务:掌握文件上传和下载技术(资源存放服务器磁盘中.)2.文件上传文件上传:允许客户将本地文件,上传到服务器端应用场景:上传照片、上传新闻图片、上传音频等等.上传准备:1:提供页面给用户点击上传2:服务器端接受用户上传文件.不再是一个字符串request.getParameter("xx")-->String传统获取客户资源apirequest.getParamtger/values/mapStringString[]上传服务器端servlet代码需要专门api解析上传文件----->I/

2、O写到服务器端指定磁盘文件服务器端如何获取绝对路径!!ServletContext.getRealPath()2.1.文件上传jsp页面设置在用户的页面.jsp页面需求如下:jsp页面需要的参数配置1、在用户页面中添加上传输入项(客户端页面操作)注意事项:要求1)必须为文件上传input提供name属性,否则文件上传内容不会被表单提交2)表单的提交是post3)设置表单的enctype="multipart/-data"使得文件上传编码-----MIME编码格式上传页面的编写说明da

3、y18_upload工程编写upload.jsp页面上传jsp页面硬性要求upload.jsp页面设计:2:服务器端servlet表单提交action地址获取上传信息解析文件--->I/O写到磁盘位置解析request.getInputStream将文件和文本信息分类保存请求参数信息自动封装一个对象FileItem对象引入apache上传框架一组jar引入lib目录即可lib引入2个jar查看文档如何上传!解析request.InputStream重点从此开始1:开发步骤2:文档参照解析request对象List集合所有

4、请求参数信息集合里面泛型!!集合里面元素类型!FileItem:将上传普通文本type="text/radio"类型封装到FileItem对象将上传文件type="file"-->封装到FileItem对象里面解析完成!!3:集合元素进行分类处理参照文档集合分类代码文档集合List上传文件处理代码item.getFiledName():---->获取标签input标签name属性对应值item.getName();--->上传文件文件名item.getContentType()--->上传文件的mim

5、e类型text/html/////注意:乱码问题普通文本域解决乱码getString("utf-8")文件名称乱码:解析之前解决parser.setHeaderEncoding("utf-8")关键步骤上传文件写到服务器指定磁盘位置:上传本质1获取服务器存放上传文件绝路路径2:item.write(file)将文件写到指定文件代替i/o读取!item.isFormField()循环遍历集合判断当前元素是否是一个普通文本域还是一个上传文件.测试:代码发现服务器tomcat主目录temp临时目录会有上传临时文件缓存!!上传文

6、件完成之后清除缓存item.delete()清理该目录下缓存!优化版本代码获取服务器绝对路径.5:上传完成之后一般设置上传文件大小不允许用户肆意上传大文件.代码对上传文件大小处理添加代码上传过大提供友好页面处理异常捕捉异常信息在友好页面给予处理....上传问题说明1.1.上传问题1浏览器兼容问题:1:IE出问题火狐没有问题IE报错:E:all_apachesapache-tomcat-6.0.32apache-tomcat-6.0.32webappsday18_uploaduploadE:servlet_

7、day02.docIE出现问题上传文件名带有客户端盘符!代码添加对于浏览器类型提交数据处理IEforefire都要可以实现文件上传引入工具类处理盘符问题下发分层jarservlet上传的代码需要添加一行即可.引入工具类截取文件名上传代码添加工具类解决文件名问题1.1.上传问题2文件名重名问题覆盖同一个目录下文件名相同的文件!导致文件丢失!!后续操作显示该文件真实名称!!解决方案:真实名称和随机名称文件存在服务器路径都插入到数据库1,asdasfasfa.jpg,陈冠希.jpg,/upload/mm/asdasfasfa.

8、jpg如何解决生成的文件名相同?引入:UUID解决方法引入工具类生成随机不同的文件名代码块:补充:减轻服务器磁盘一个文件夹存放海量文件可以引入分离目录算法!!(了解!)1.1.上传的服务器编码详细步骤a)http://commons.apache.org/fileupload/下载fileuploadjar包同时下载

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。