jspSmartUpload上传下载全攻略(三、文件上传篇 …

2008-02-23 09:35:18来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

三、文件上传篇

㈠ 表单要求

对于上传文件的FORM表单,有两个要求:

1、METHOD应用POST,即METHOD="POST"。

2、增加属性:ENCTYPE="multipart/form-data"

下面是一个用于上传文件的FORM表单的例子:

<FORM METHOD="POST" ENCTYPE="multipart/form-data" 

ACTION="/JSPSmartUpload/upload.jsp">

<INPUT TYPE="FILE" NAME="MYFILE">

<INPUT TYPE="SUBMIT">

</FORM>


㈡ 上传的例子

1、上传页面upload.html

本页面提供表单,让用户选择要上传的文件,点击"上传"按钮执行上传操作。

页面源码如下:

<!--

    文件名:upload.html

	作  者:纵横软件制作中心雨亦奇(zhsoft88@sohu.com)

-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>文件上传</title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

</head>



<body>

<p>&nbsp;</p>

<p align="center">上传文件选择</p>

<FORM METHOD="POST" ACTION="jsp/do_upload.jsp"

ENCTYPE="multipart/form-data">

<input type="hidden" name="TEST" value="good">

  <table width="75%" border="1" align="center">

    <tr> 

      <td><div align="center">1、 

          <input type="FILE" name="FILE1" size="30">

        </div></td>

    </tr>

    <tr> 

      <td><div align="center">2、 

          <input type="FILE" name="FILE2" size="30">

        </div></td>

    </tr>

    <tr> 

      <td><div align="center">3、 

          <input type="FILE" name="FILE3" size="30">

        </div></td>

    </tr>

    <tr> 

      <td><div align="center">4、 

          <input type="FILE" name="FILE4" size="30">

        </div></td>

    </tr>

    <tr> 

      <td><div align="center">

          <input type="submit" name="Submit" value="上传它!">

        </div></td>

    </tr>

  </table>

</FORM>

</body>

</html>


2、上传处理页面do_upload.jsp

本页面执行文件上传操作。页面源码中详细介绍了上传方法的用法,在此不赘述了。

页面源码如下:

<%--

	文件名:do_upload.jsp

	作  者:纵横软件制作中心雨亦奇(zhsoft88@sohu.com)

--%>

<%@ page contentType="text/html; charset=gb2312" language="Java" 

import="java.util.*,com.jspsmart.upload.*" errorPage="" %>

<html>

<head>

<title>文件上传处理页面</title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

</head>



<body>

<%

	// 新建一个SmartUpload对象

	SmartUpload su = new SmartUpload();

	// 上传初始化

	su.initialize(pageContext);

	// 设定上传限制

	// 1.限制每个上传文件的最大长度。

	// su.setMaxFileSize(10000);

	// 2.限制总上传数据的长度。

	// su.setTotalMaxFileSize(20000);

	// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。

	// su.setAllowedFilesList("doc,txt");

	// 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,

	jsp,htm,html扩展名的文件和没有扩展名的文件。

	// su.setDeniedFilesList("exe,bat,jsp,htm,html,,");

	// 上传文件

	su.upload();

	// 将上传文件全部保存到指定目录

	int count = su.save("/upload");

	out.println(count "个文件上传成功!<br>");

	

	// 利用Request对象获取参数之值

	out.println("TEST=" su.getRequest().getParameter("TEST")

	 "<BR><BR>");



	// 逐一提取上传文件信息,同时可保存文件。

	for (int i=0;i<su.getFiles().getCount();i  )

	{

		com.jspsmart.upload.File file = su.getFiles().getFile(i);

		

		// 若文件不存在则继续

		if (file.isMissing()) continue;



		// 显示当前文件信息

		out.println("<TABLE BORDER=1>");

		out.println("<TR><TD>表单项名(FieldName)</TD><TD>"

		  file.getFieldName()   "</TD></TR>");

		out.println("<TR><TD>文件长度(Size)</TD><TD>"   

		file.getSize()   "</TD></TR>");

		out.println("<TR><TD>文件名(FileName)</TD><TD>" 

		  file.getFileName()   "</TD></TR>");

		out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>" 

		  file.getFileExt()   "</TD></TR>");

		out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"

		  file.getFilePathName()   "</TD></TR>");

		out.println("</TABLE><BR>");



		// 将文件另存

		// file.saveAs("/upload/"   myFile.getFileName());

		// 另存到以Web应用程序的根目录为文件根目录的目录下

		// file.saveAs("/upload/"   myFile.getFileName(), 

		su.SAVE_VIRTUAL);

		// 另存到操作系统的根目录为文件根目录的目录下

		// file.saveAs("c:\\temp\\"   myFile.getFileName(), 

		su.SAVE_PHYSICAL);



	}

%>

</body>

</html>
			   
			   

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:jspSmartUpload上传下载全攻略 (二、相关类说明篇 )

下一篇:监控一个web服务的讨论(如果weblogic服务死掉了,让其自动启动)