<%@ page contentType="text/html;charset=GBK"%>
<html>
<head>
<title>File Upload</title>
</head>
<body>
<font size=5 color=#FF0000> <b>文件上传----使用jspsmart upload组件</b>
</font>
<br>
<form action="uploadfile" method="post" enctype="multipart/form-data">
<p>
文件名称:
<input type="file" name="file1" size="20" maxlength="80">
</p>
<p>
文件名称:
<input type="file" name="file2" size="20" maxlength="80">
</p>
<p>
文件名称:
<input type="file" name="file3" size="20" maxlength="80">
</p>
<p>
上传路径:
<input type="text" name="path" size="30" maxlength="50">
<br>
</p>
<p>
附加内容:
<input type="text" name="other" size="30" maxlength="50">
</p>
<p>
<input type="submit" value="上传">
<input type="reset" value="重置">
</p>
</form>
<font size=5 color=#FF0000> <b>文件下载----使用jspsmart upload组件</b>
</font>
<br>
<form action="downloadfile" method="post">
<p>
下载文件的名称:
<input type="text" name="downloadFileName" size="20" maxlength="80">
</p>
<input type="submit" value="下载">
</body>
</form>
</html>
---------------------------------------------------------------------
ServletUpload.java 上传
package wit.ou;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.jspsmart.upload.SmartUpload;
/**
* 描述:上传servlet
* @author 2009-3-4 转载 http://www.blogjava.net/hijackwust/archive/2007/08/22/138598.html
*
*/
public class ServletUpload extends HttpServlet {
private ServletConfig config;
final public void init(ServletConfig config) throws ServletException {
this.config = config;
}
protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println("<HTML>");
out.println("<BODY BGCOLOR='white'>");
out.println("<H1>jspSmartUpload : Servlet Sample</H1>");
out.println("<HR>");
// 变量定义
int count = 0;
//创建一个SmartUpload类
SmartUpload mySmartUpload = new SmartUpload();
try {
//初始化
mySmartUpload.initialize(config, request, response);
//上传
mySmartUpload.upload();
for (int i = 0; i < mySmartUpload.getFiles().getCount(); i++) {
com.jspsmart.upload.File myfile = mySmartUpload.getFiles().getFile(i);
String fileName = myfile.getFileName();
//保存
count = mySmartUpload.save("/upload");
//count = mySmartUpload.save(null);
}
out.println(count + " file uploaded.");
} catch (Exception e) {
out.println("Unable to upload the file.<br>");
out.println("Error : " + e.toString());
}
//通过 方法 mySmartUpload.getRequest().getParameter(arg0);还可以获取传过来的非file类型的其他值。
out.println("</BODY>");
out.println("</HTML>");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
--------------------------------------------------------------------
ServletDownload.java 下载
package wit.ou;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.jspsmart.upload.SmartUpload;
public class ServletDownload extends HttpServlet {
private ServletConfig config;
final public void init(ServletConfig config) throws ServletException {
this.config = config;
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String temp_p =request.getParameter("downloadFileName");
byte[] temp_t=temp_p.getBytes("ISO8859_1");
String fileName=new String(temp_t,"GBK");
SmartUpload mySmartUpload = new SmartUpload();
try {
//初始化
mySmartUpload.initialize(config, request, response);
//设置不自动打开
mySmartUpload.setContentDisposition(null);
mySmartUpload.downloadFile("/upload/"+fileName);
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
其中上传的时候 还可以通过jar包提供的方法设置一些上传的参数!
下载文件常用的方法
1、setContentDisposition
作用:将数据追加到MIME文件头的CONTENT-DISPOSITION域。jspSmartUpload
组件会在返回下载的信息时自动填写MIME文件头的CONTENT-DISPOSITION域,如果用户需要添加额外信息,请用此方法。
原型:public void setContentDisposition(String contentDisposition)
其中,contentDisposition为要添加的数据。如果contentDisposition为null,则组件将自动添
加"attachment;",以表明将下载的文件作为附件,结果是IE浏览器将会提示另存文件,而不是自动打开这个文件(IE浏览器一般根据下载的文件
扩展名决定执行什么操作,扩展名为doc的将用word程序打开,扩展名为pdf的将用acrobat程序打开,等等)。
2、downloadFile
作用:下载文件。
原型:共有以下三个原型可用,第一个最常用,后两个用于特殊情况下的文件下载(如更改内容类型,更改另存的文件名)。
① public void downloadFile(String sourceFilePathName)
其中,sourceFilePathName为要下载的文件名(带目录的文件全名)
② public void downloadFile(String sourceFilePathName,String contentType)
其中,sourceFilePathName为要下载的文件名(带目录的文件全名),contentType为内容类型(MIME格式的文件类型信息,可被浏览器识别)。
③ public void downloadFile(String sourceFilePathName,String contentType,String destFileName)
其中,sourceFilePathName为要下载的文件名(带目录的文件全名),contentType为内容类型(MIME格式的文件类型信息,可被浏览器识别),destFileName为下载后默认的另存文件名。
----------------------------------------------------------------------------------
另外如果使用struts2,struts2中如何取得ServletConfig
?
答案:
ServletConfig config = ServletActionContext.getPageContext().getServletConfig();
这样就可以在webwork2或Struts2中得到ServletConfig
分享到:
相关推荐
【标题】"jspsmartupload.zip+例子" 涉及到的是一个使用JSP和SmartUpload库进行文件上传的示例项目。SmartUpload是一个在Java Web开发中常用的开源库,它简化了JSP页面上的文件上传操作。下面将详细阐述这个主题的...
`JspSmartUpload` 是一个在Java Web开发中用于文件上传和下载的工具库,尤其在JSP(Java Server Pages)环境下广泛使用。这个库在早期的Web开发中非常流行,因为它提供了简单易用的API来处理文件上传,解决了HTML...
`jspsmartupload上传例子`是一个基于Java Web的文件上传解决方案,主要利用JSP和Servlet技术来处理用户通过网页上传文件的需求。这个例子包括了必要的文档、库文件以及示例JSP页面,帮助开发者理解如何在项目中实现...
5. **处理上传**:在Servlet中,使用JSpsmartUpload提供的API解析请求,获取上传的文件对象,然后保存到服务器。 ### 四、实例代码 以下是一个简单的使用JSpsmartUpload处理文件上传的Servlet示例: ```java ...
本教程将详细讲解如何使用 `JSP` 和 `Servlet` 结合 `jspsmartupload` 库来实现文件上传功能。 首先,我们需要了解`jspsmartupload`库。`jspsmartupload` 是一个基于Java的开源项目,专门设计用于在`JSP`页面上处理...
`jspSmartUpload`是一款免费的、功能齐全的文件上传和下载组件,适用于在JSP应用程序中集成上传和下载功能。该组件以其简洁的API、强大的文件控制能力以及灵活性赢得了开发者青睐。 1. **简单易用**:只需在JSP页面...
JspSmartUpload上传文件实例,基于JspSmartUpload组件的文件上传实例,JspSmartUpload 上传类,在JSP中进行文件上传的类,内含文档和使用例子。这个在JSP编程环境下,使用频率还是挺高的,这个例子可帮助你在JSp环境...
`jspsmartupload`是一个基于Java的上传组件,它允许用户在Web应用中实现文件上传功能。这个组件在早期的Web开发中非常流行,因为它提供了处理大文件上传、多文件上传以及进度显示等功能,这些都是标准HTML表单提交所...
### JSP 使用 jspsmartupload.jar 包上传文件示例详解 #### 一、概述 在JSP(Java Server Pages)开发中,文件上传是一项常见的功能需求。jspsmartupload.jar是一个专门用于处理文件上传的强大工具包,它简化了...
2、有用jspSmartupload制作一个文件上传和下载的例子,其制作的例子能够上传到数据库中; 3、还用ExtJS制作的多文件同时上传的例子,后台也是用Servlet处理。 4、用Servlet要注意web.xml映射的配置。
jspSmartUpload是一个免费的、全功能的文件上传和下载组件,特别适合用于JSP应用程序中实现文件交互功能。这个组件具有以下特点: 1. **源文件下载**:用户可以从多个网址获取该组件的源代码,包括...
结合jspsmartupload并附上中文jar包,有多个示例,有用jsp上传下载示例,有action上传下载示例,jsp和action都有上传到本机文件夹和数据库或者从数据库下载显示的示例,需要的朋友绝对不能错过,例子简单易懂,并附...
本示例“jsp上传下载smartupload使用例子”旨在教你如何利用SmartUpload库实现这一功能。SmartUpload是一个强大的Java组件,专为处理HTTP文件上传而设计,支持多文件上传、大小限制以及错误处理等特性。 首先,让...
**JSPSmartUpload上传文件详解** 在Java Web开发中,文件上传是一项常见功能,用于接收用户上传的图片、文档等数据。JSPSmartUpload是一个基于Java的文件上传组件,它为开发者提供了一套简单易用的API,方便在JSP...
本篇文章将深入探讨`jspsmartupload`的使用方法,以及如何结合流式下载和上传实现高效、安全的文件操作。 首先,`jspsmartupload`库提供了易于使用的API,使得开发者可以轻松地在JSP页面上创建上传表单,并在后台...
综上所述,使用jspSmartUpload可以轻松地实现文件的上传和下载功能。通过合理设置表单和处理页面,开发者可以控制文件上传的细节,并确保文件能够被正确地处理和存储。此外,通过设置响应头,还可以方便地实现文件的...
1. 首先,你需要在你的项目中引入SmartUpload的jar包,如jspSmartUpload.jar。这个文件在解压后的servlet_upload目录中应该能找到。 2. 在Servlet中,你需要实例化SmartUpload对象,然后调用其初始化方法,以准备...
在本文中,我们将深入探讨如何使用jspSmartUpload组件来实现图片的上传和更名功能。jspSmartUpload是一个强大的Java Web组件,它简化了文件上传的过程,提供了方便的API和丰富的功能。在这个过程中,我们将看到如何...