首页 | 源码下载 | 网站模板 | 网页特效 | 广告代码 | 网页素材 | 字体下载 | 书库 | 站长工具
会员投稿 投稿指南 RSS订阅
当前位置:主页>网络编程>jsp教程>资讯:Jsp页面实现文件上传下载

Jsp页面实现文件上传下载

www.jz123.cn  2008-09-02   来源:   中国建站    袁袁整理    我要投递新闻


//       out.println("parameter size:" + usernameArr.length);
//       out.println("fileArr size:" + fileArr.length);
//       if (fileArr.length > 0)
//              out.println("fileArr 0:" + fileArr[0]);
%>

 

使用的时候的注意事项:

一定要设定request对象。
一定要设定正确的上传路径。
执行完了之后才可以得到其他参数,因为执行了之后这些参数才被分析。
1,2两点如果没有做到的话,process方法执行的时候汇报错。

各个用户可用的方法及说明:

设定requet对象。
public void setRequest(HttpServletRequest request)

设定文件上传的路径。
public void setUploadPath(String path)

文件上传处理主程序。
@return int 操作结果 0 文件操作成功;1 request对象不存在。 2 没有设定文件保存路径或者文件保存路径不正确;3
         没有设定正确的enctype;4 文件操作异常。
public int process()

根据name取得form表单中其他传递的参数的值(多个的话返回其中一个)
public String getParameter(String name)

根据name取得form表单中其他传递的参数的值(返回数组,可有多个)
public String[] getParameters(String name)

取得上传成功文件的个数
public int getUpdFileSize()

取得上传的文件名对应的数组。
public String[] getUpdFileNames()

注意process方法地返回值,在不是0的情况下操作失败。

以下提供测试类以及测试页面(见附件):

HelloPostFile.html
HelloPostFile.jsp
写在jsp中的代码的测试文件。
HelloPostFileWithClass.html
HelloPostFileWithClass.jsp
抽出class后的测试文件。
src在
WEB-INF/src/
class在
WEB-INF/classes/

另:
由于这个文件被我在中文日文系统下编辑过,注释出现乱码,所以大部分都删掉了,见谅。

下载:WEB-INF.zip
JSP文件下载类整理完成。可以在JSP页面中实现简单的下载,支持文件打包下载功能。支持将字符串或者流生成文件提供下载的功能。但是也有一些缺点。现把这个类的基本介绍总结如下。

名称:jsp页面下载类
作者:SinNeR
Mail:vogoals[at]hotmail.com

特点及功能介绍:

支持单文件下载。支持多文件zip压缩下载。多文件zip压缩可在服务器保留或者删除副本。支持将特定的字符串或者byte数组以指定的文件名提供下载。
在下载过程中需要提供response对象。并且选择下载形式。
下载处理前先进行check,避免出现错误。
下载处理过程中出错时,会报告错误信息。
日文系统下文件名是中文时出现乱码问题。
处理前需要进行相对繁琐的设定。
现介绍下使用者可见的方法的功能。

设定实现下载必须的response对象。
public void setResponse(HttpServletResponse response)

设定下载方式:0 为普通单文件下载。 1 为多文件压缩成zip包下载。 2 为将指定的字符串等拼接成文件内容提供给用户下载。
public void setDownType(int fileType)

设定下载时显示给用的文件名。
public void setDisFileName(String fileName)
   

压缩文件下载时,设定压缩文件暂时保存的路径(路径为绝对路径)
public void setZipFilePath( String path )
   

压缩文件下载时,设定服务器端生成的压缩文件是否删除。True 删除;false 保留。
public void setZipDelFlag(boolean b)
   
压缩文件下载时,设定要压缩的文件的文件路径(路径为绝对路径)
public void setZipFileNames(String[] fileNames)

单文件下载时,设定下载文件的路径(绝对路径)
public void setDownFileName(String fileName)
   

将字符串生成文件内容模拟下载时,设定文件的内容。参数为字符串(可多次调用)
public int setFileContent(String fileContent)

将字符串生成文件内容模拟下载时,设定文件的内容。参数为byte数组(可多次调用)
返回值:0 操作正常; 9 出现IO异常。
public int setFileContent(byte[] fileContent)
   
将字符串生成文件内容模拟下载时,调用此方法结束文件内容设定。
返回值:0 操作正常; 9 出现IO异常。
public int setFileContentEnd()
   
主处理函数。
返回值:    0   处理正常;1  未设定response对象。 2  未设定文件下载方式。  3   未设定要显示的文件名。  4  未设定要下载的文件路径,或者设定的下载的文件路径不存在。  9  IO异常。
public int process()

现在介绍不同下载模式下的简单流程:

单文件下载流程:

//实例初始化
JspFileDownload jfd = new JspFileDownload();

上一篇:JSP网站开发环境的目录结构标准 下一篇:Jsp常用功能:CSV文件的生成与分析

评论总数:2 [ 查看全部 ] 网友评论