http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=379
在JSP中如何使用SmartUpload下载?
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=33247
如何用jsp实现上传文件的功能?(
如果还不够,就看看这里的FAQ,有很多关于上传下载的帖子的。
在JSP中如何使用SmartUpload下载?
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=33247
如何用jsp实现上传文件的功能?(
如果还不够,就看看这里的FAQ,有很多关于上传下载的帖子的。
commons-fileupload-1.0
commons-httpclient-2.0
这都是免费的
如commons-fileupload-1.0就是http://jakarta.apache.org/commons/fileupload/index.html
举例你看看:
<html><head><title>文件上传演示</title></head><body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="40" marginwidth="0" marginheight="0"><center><h1>文件上传演示</h1><form name="uploadform" method="POST" action="save.jsp" ENCTYPE="multipart/form-data"> <table border="1" width="450" cellpadding="4" cellspacing="2" bordercolor="#9BD7FF"> <tr><td width="100%" colspan="2"> 文件1:<input name="file1" size="40" type="file"> </td></tr> <tr><td width="100%" colspan="2"> 文件2:<input name="file2" size="40" type="file"> </td></tr> <tr><td width="100%" colspan="2"> 文件3:<input name="file3" size="40" type="file"> </td></tr> </table> <br/><br/> <table> <tr><td align="center"><input name="upload" type="submit" value="开始上传"/></td></tr> </table></form></center></body></html>
<%/** * 演示文件上传的处理 * @author <a href="mailto:[email protected]">Winter Lau</a> * @version $Id: save.jsp,v 1.00 2003/03/01 10:10:15 */%><%@ page language="java" contentType="text/html;charset=GBK"%><%@ page import="java.util.*"%><%@ page import="org.apache.commons.fileupload.*"%><html><head><title>保存上传文件</title></head><% String msg = ""; FileUpload fu = new FileUpload(); // 设置允许用户上传文件大小,单位:字节 fu.setSizeMax(10000000); // maximum size that will be stored in memory? // 设置最多只允许在内存中存储的数据,单位:字节 fu.setSizeThreshold(4096); // 设置一旦文件大小超过getSizeThreshold()的值时数据存放在硬盘的目录 fu.setRepositoryPath("C:\\TEMP"); //开始读取上传信息 List fileItems = fu.parseRequest(request);%><body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="40" marginwidth="0" marginheight="0"><font size="6" color="blue">文件列表:</font><center><table cellpadding=0 cellspacing=1 border=1 width="100%"><tr><td bgcolor="#008080">文件名</td><td bgcolor="#008080">大小</td></tr><% // 依次处理每个上传的文件 Iterator iter = fileItems.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); //忽略其他不是文件域的所有表单信息 if (!item.isFormField()) { String name = item.getName(); long size = item.getSize(); if((name==null||name.equals("")) && size==0) continue;%><tr><td><%=item.getName()%></td><td><%=item.getSize()%></td></tr><% //保存上传的文件到指定的目录 name = name.replace(':','_'); name = name.replace('\\','_'); item.write("F:\\" + name); } }%></table> <br/><br/><a href="upload.html">返回上传页面</a></center></body></html>
MultipartPostMethod filePost = new MultipartPostMethod("your URL","save temp directory","save file name");HttpClient client = new HttpClient();
//由于要上传的文件可能比较大,因此在此设置最大的连接超时时间
client.setTimeout(5000);int status = client.executeMethod(filePost);
/////////////
1。它将要上传的文件一次性读入内存,这样会耗费很多资源,又对其他程序造成资源影响。
而且由此产生内存溢出错误,并限制上传文件的大小(不能大于内存空间或虚拟内存)。
2。将原来的文件名原封不动的传到服务器上不是好方法。比如,遇到文件名冲突的话,会覆盖掉前面的文件,如果不同的用户上传同一个名字的文件,那就出问题了。所以,我自己写了个上传Bean。
1。通过循环读入字符流,可以上传任意大小的文件,只要网络不掉线;
2。可以定义文件名的规则,比如加上日期、用户信息,防止文件重名冲突;
3。与数据库关联这功能不必多说;
4。很好的支持中文文件名(因为我是中国人);
5。同时上传任意多个文件,记录各文件名、大小(通过HashMap实现,效率高);
6。可以限制上传大小。
。。
.cn
楼主,你要是想要UploadSmart的话我可以给你发一个,想要的话用短信息留言