全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
很多初学jsp的同志都在实现文件上传到服务器或者从服务器上下载文件到本地计算机这方面不是很了解,今天在这里我会帮助大家慢慢的实现这一功能。准备工作:1. 到网上下载两个包第一个叫做commons-fileupload-1.2.1.jar第二个叫做commons-io-1.3.2.jar2. 建一个项目用来实现文件上传和下载我创建的Web项目名为fileUpload,截图如下3. 我们把从网上下载下来的包copy到WebRoot目录下Web-INF下的子目录lib目录里 然后打开Referenced Libraries,你会看见两个包已经存在于里面了。下面我们开始实现文件上传1. 首先我们创建一个名为uploadFile.jsp的页面,如下图:点击浏览,可以出现以下画面源代码如下: base href= 实现文件上传到服务器 !- 文件: 姓名: 注意:form表单里的enctype=”multipart/form-data”这一属性一定要写,这是用来标明此表单的类型是文件类型的。2. 创建另一个jsp页面用来处理文件上传页面(实现功能),名为doFileUpload.jsp。一定要和form表单里action的值相同才行源代码和注释如下:%/先判断是否是文件上传类型enctype=multipart/form-databoolean isFileUpload = ServletFileUpload.isMultipartContent(request);/如果是文件上传类型if(isFileUpload)/得到文件上传工厂FileItemFactory factory = new DiskFileItemFactory();/处理文件上传核心类ServletFileUpload fileUpload = new ServletFileUpload(factory);/设置文件上传类的编码格式fileUpload.setHeaderEncoding(UTF-8);/ 集合数据 : FileItem对象 注意: 每一个表单域 对应一个 FileItem对象(封装)List fileItemList = fileUpload.parseRequest(request);/遍历fileItemListfor(FileItem item: fileItemList)/如果这个文本域是文件类型的if(!item.isFormField()/得到文本域的value值,即 路径+文件名String value = item.getName();/得到文件名String fileName = value.substring(value.lastIndexOf()+1);/得到上传的文件类型/String fileType = fileName.substring(fileName.lastIndexOf(.);/给文件重新命名 日期+文件名 fileName = new Date().getTime() + fileName;/得到服务器的根路径String rootPath = request.getRealPath(/);/指定文件存放路径String realPath = rootPath+/+upload;/定义文件存放的目录,注意 目录也是文件File file = new File(realPath);/如果目录不存在if(!file.isDirectory()/创建文件上传目录file.mkdirs();File newFile = new File(realPath+/+fileName);/向newFile文件中写入数据item.write(newFile);else /如果不是文件上传的文本域,把输入的内容显示在页面上 out.print(name= + new String(item.getFieldName().getBytes(ISO-8859-1),utf-8)+,value=+ new String(item.getString().getBytes(ISO-8859-1),utf-8); %OK,大功告成了!把项目发布到tomocat里,然后启动tomocat即可访问了,上传的文件的目录在tomocat的安装目录下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 挫折中奋起课件
- 北京市通州区2025-2026学年高一上学期期中考试语文试题(解析版)
- 员工培训服务合同模板(3篇)
- 《GBT 18487.2-2017 电动汽车传导充电系统 第 2 部分:非车载传导供电设备电磁兼容要求》专题研究报告
- 深度解析(2026)《GBT 13138-2020自整角机通 用技术条件》(2026年)深度解析
- 深度解析(2026)《GBT 13241-2017铁矿石 还原性的测定方法》
- 深度解析(2026)《GBT 12560-1999半导体器件 分立器件分规范》(2026年)深度解析
- 深度解析(2026)《GBT 10740-2002纸浆尘埃和纤维束的测定》
- 妇产科疾病诊疗进展及团队协作
- 医疗人才培养与使用策略
- 国家开放大学《儿童心理学》形考任务1-5参考答案
- 汽车新技术-发动机新技术
- 管道开挖回填基础工程量参考计算表
- 白杨礼赞 全国优质课一等奖
- 自动控制原理课程设计报告恒温箱
- 江西d照驾驶员理论考试
- GB/T 13298-2015金属显微组织检验方法
- 保洁人员工作手册
- 学校食堂满意度课件
- 商业中心项目质量标准化交流汇报56
- 手指末节肌腱止点重建课件
评论
0/150
提交评论