web开发中资料上传下载

web开发中资料上传下载

ID:34619593

大小:155.00 KB

页数:46页

时间:2019-03-08

web开发中资料上传下载_第1页
web开发中资料上传下载_第2页
web开发中资料上传下载_第3页
web开发中资料上传下载_第4页
web开发中资料上传下载_第5页
资源描述:

《web开发中资料上传下载》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1.文件上传的原理:  表单元素的enctype属性指定的是表单数据的编码方式,该属性有3个值:  1)application/x-www-form-urlencoded:这是默认编码方式,它只处理表单域里的value属性值,采用这种编码方式的表单会将表单域的值处理成URL编码方式。矚慫润厲钐瘗睞枥庑赖。  2)multipart/form-data:这种编码方式的表单会以二进制流的方式来处理表单数据,这种编码方式会把文件域指定文件的内容也封装到请求参数里。聞創沟燴鐺險爱氇谴净。  3)text/plain:这种方式主要适用于直接

2、通过表单发送邮件的方式。  文件上传是web应用经常用到的一个知识。原理是,通过为表单元素设置enctype=”multipart/form-data”属性,让表单提交的数据以二进制编码的方式提交,在接收此请求的Servlet中用二进制流来获取内容,就可以取得上传文件的内容,从而实现文件的上传。残骛楼諍锩瀨濟溆塹籟。  在Java领域中,有两个常用的文件上传项目:一个是Apache组织Jakarta的Common-FileUpload组件(http://commons.apache.org/fileupload/),另一个是Ore

3、illy组织的COS框架(http://www.servlets.com/cos/)。利用这两个框架都能很方便的实现文件的上传。酽锕极額閉镇桧猪訣锥。  2.Struts2的文件上传:  Struts2并未提供自己的请求解析器,也就是就Struts2不会自己去处理multipart/form-data的请求,它需要调用其他请求解析器,将HTTP请求中的表单域解析出来。但Struts2在原有的上传解析器基础上做了进一步封装,更进一步简化了文件上传。彈贸摄尔霁毙攬砖卤庑。  Struts2默认使用的是Jakarta的Common-Fi

4、leUpload框架来上传文件,因此,要在web应用中增加两个Jar文件:commons-fileupload-1.2.jar和commons-io-1.3.1.jar。它在原上传框架上做了进一步封装,简化了文件上传的代码实现,取消了不同上传框架上的编程差异。謀荞抟箧飆鐸怼类蒋薔。  如果要改成其它的文件上传框架,可以修改struts.multipart.parser常量的值为cos/pell,默认值是jakata。并在classpath中增加相应上传组件的类库。厦礴恳蹒骈時盡继價骚。  2.1.步骤一:创建带上传表单域的页面<%

5、@pagelanguage="java"contentType="text/html;charset=UTF-8"%>茕桢广鳓鯡选块网羈泪。<html><head><title>Struts2FileUpload</title></head><body><formaction="fileUpload.action"method="POST"enctype="multipart/form-data">鹅娅尽損鹌惨歷茏鴛賴。文件标题:<inputtype="text"name="title"size="50"/><br/>籟丛妈羥为贍

6、偾蛏练淨。选择文件:<inputtype="file"name="upload"size="50"/><br/>預頌圣鉉儐歲龈讶骅籴。<inputtype="submit"value="上传"/></form></body></html>  此页面特殊之处只是把表单的enctype属性设置为multipart/form-data。  2.2.步骤二:创建处理上传请求的Action类packageorg.qiujy.web.struts2;importjava.io.BufferedInputStream;importjava.io

7、.BufferedOutputStream;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.InputStream;importjava.io.OutputStream;importorg.apache.struts2.ServletActionContext;importcom.opensymphony.xwork2.ActionSupport;/***处理文件上传的Action类*@aut

8、horqiujy*@version1.0*/publicclassFileUploadActionextendsActionSupport{渗釤呛俨匀谔鱉调硯錦。privatestaticfinalintBUFFER_SIZE=16*1024;//

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

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

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