可以定义多个文件框,上传的时候处理就好了,我给你看看我以前写的一个,用SmartUpload实现的,//upload页面
<%@ page language="java" contentType="text/html; charset=GB2312"
pageEncoding="GB2312"%>
<%
request.setCharacterEncoding("GB2312");
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>
<head>
<title>文件上传</title> <script language="javascript">
function sub(){
document.myform.submit();
}
</script>
</head> <body>
<p> </p>
<p align="center">上传信息输入</p>
<FORM name="myform" METHOD="POST" ACTION="do_upload.jsp"
ENCTYPE="multipart/form-data">
<table width="75%" border="1" align="center">
<tr>
<td><div align="left">1、
<input type="FILE" name="FILE1" size="30">
</div></td>
</tr>
<tr>
<td><div align="left">2、
<input type="FILE" name="FILE2" size="30">
</div></td>
</tr>
<tr>
<td><div align="left">3、
<input type="FILE" name="FILE3" size="30">
</div></td>
</tr>
<tr>
<td><div align="left">4、
<input type="FILE" name="FILE4" size="30">
</div></td>
</tr>
<tr>
<td><div align="left">
</div></td>
</tr>
<tr>
<td>标 题:<input type=text name=title size=37 ></td>
</tr>
<tr>
<td>信息描述:<textarea name=Re cols=50 rows=8></textarea></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="button" name="Submit" value="提交" onClick="sub()" >
</div></td>
</tr>
</table>
</FORM>
</body>
</html>处理:do_upload.jsp<%--
文件名:do_upload.jsp
--%>
<%@ page contentType="text/html; charset=gb2312" language="java"
import="com.jspsmart.upload.*,java.sql.*"
errorPage=""%> <html>
<head>
<title>文件上传处理页面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head> <body>
<%
Connection con;
ResultSet rs;
Statement stmt;
String driver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost/upload";
String user="luozhe0107";
String password="petrel";
Class.forName(driver).newInstance();
con=DriverManager.getConnection(url,user,password);
stmt=con.createStatement();
/*
//数据库登录用户和密码
String user="luozhe0107";
String password="petrel";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:jspbook";
con=DriverManager.getConnection(url,user,password);
//创建一个jdbc声明
stmt=con.createStatement();
*/ System.out.println("ok");
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
su.upload();
String title=su.getRequest().getParameter("title");
String Re=su.getRequest().getParameter("Re");int count = su.save("/upload");
out.println(count+"个文件上传成功!<br>");
//out.println("TEST="+su.getRequest().getParameter("TEST")+"<BR><BR>");
System.out.println("2");
for (int i=0;i<su.getFiles().getCount();i++)
{
System.out.println("3");
com.jspsmart.upload.File file = su.getFiles().getFile(i); if (file.isMissing()) continue; String filename=file.getFileName();
int ifilelength=file.getSize();
String sfilelength=Integer.toString(ifilelength);
String filetype=file.getFileExt();
java.util.Date dt = new java.util.Date();
String suploadtime=String.valueOf(1900+dt.getYear())+"-"+String.valueOf(1+dt.getMonth())
+"-"+String.valueOf(dt.getDate())+" "+String.valueOf(dt.getHours())
+":"+String.valueOf(dt.getMinutes())+":"+String.valueOf(dt.getSeconds());
int fileid=0;stmt.executeUpdate("insert into uploadfileinfo2(fileid,filename,title,"
+"filetype,filelength,uploadtime,description)"
+"values('"+fileid+"','"+filename+"','"+title+"','"+filetype+"','"
+sfilelength+"','"+suploadtime+"','"+Re+"')");
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>文件名:</TD><TD>"+ filename + "</TD></TR>");
out.println("<TR><TD>文件长度:</TD><TD>" +sfilelength + "</TD></TR>");
out.println("<TR><TD>文件类型:</TD><TD>"+ filetype + "</TD></TR>");
//out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"+ file.getFilePathName() + "</TD></TR>");
out.println("</TABLE><BR>");
}
%>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=GB2312"
pageEncoding="GB2312"%>
<%
request.setCharacterEncoding("GB2312");
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>
<head>
<title>文件上传</title> <script language="javascript">
function sub(){
document.myform.submit();
}
</script>
</head> <body>
<p> </p>
<p align="center">上传信息输入</p>
<FORM name="myform" METHOD="POST" ACTION="do_upload.jsp"
ENCTYPE="multipart/form-data">
<table width="75%" border="1" align="center">
<tr>
<td><div align="left">1、
<input type="FILE" name="FILE1" size="30">
</div></td>
</tr>
<tr>
<td><div align="left">2、
<input type="FILE" name="FILE2" size="30">
</div></td>
</tr>
<tr>
<td><div align="left">3、
<input type="FILE" name="FILE3" size="30">
</div></td>
</tr>
<tr>
<td><div align="left">4、
<input type="FILE" name="FILE4" size="30">
</div></td>
</tr>
<tr>
<td><div align="left">
</div></td>
</tr>
<tr>
<td>标 题:<input type=text name=title size=37 ></td>
</tr>
<tr>
<td>信息描述:<textarea name=Re cols=50 rows=8></textarea></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="button" name="Submit" value="提交" onClick="sub()" >
</div></td>
</tr>
</table>
</FORM>
</body>
</html>处理:do_upload.jsp<%--
文件名:do_upload.jsp
--%>
<%@ page contentType="text/html; charset=gb2312" language="java"
import="com.jspsmart.upload.*,java.sql.*"
errorPage=""%> <html>
<head>
<title>文件上传处理页面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head> <body>
<%
Connection con;
ResultSet rs;
Statement stmt;
String driver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost/upload";
String user="luozhe0107";
String password="petrel";
Class.forName(driver).newInstance();
con=DriverManager.getConnection(url,user,password);
stmt=con.createStatement();
/*
//数据库登录用户和密码
String user="luozhe0107";
String password="petrel";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:jspbook";
con=DriverManager.getConnection(url,user,password);
//创建一个jdbc声明
stmt=con.createStatement();
*/ System.out.println("ok");
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
su.upload();
String title=su.getRequest().getParameter("title");
String Re=su.getRequest().getParameter("Re");int count = su.save("/upload");
out.println(count+"个文件上传成功!<br>");
//out.println("TEST="+su.getRequest().getParameter("TEST")+"<BR><BR>");
System.out.println("2");
for (int i=0;i<su.getFiles().getCount();i++)
{
System.out.println("3");
com.jspsmart.upload.File file = su.getFiles().getFile(i); if (file.isMissing()) continue; String filename=file.getFileName();
int ifilelength=file.getSize();
String sfilelength=Integer.toString(ifilelength);
String filetype=file.getFileExt();
java.util.Date dt = new java.util.Date();
String suploadtime=String.valueOf(1900+dt.getYear())+"-"+String.valueOf(1+dt.getMonth())
+"-"+String.valueOf(dt.getDate())+" "+String.valueOf(dt.getHours())
+":"+String.valueOf(dt.getMinutes())+":"+String.valueOf(dt.getSeconds());
int fileid=0;stmt.executeUpdate("insert into uploadfileinfo2(fileid,filename,title,"
+"filetype,filelength,uploadtime,description)"
+"values('"+fileid+"','"+filename+"','"+title+"','"+filetype+"','"
+sfilelength+"','"+suploadtime+"','"+Re+"')");
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>文件名:</TD><TD>"+ filename + "</TD></TR>");
out.println("<TR><TD>文件长度:</TD><TD>" +sfilelength + "</TD></TR>");
out.println("<TR><TD>文件类型:</TD><TD>"+ filetype + "</TD></TR>");
//out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"+ file.getFilePathName() + "</TD></TR>");
out.println("</TABLE><BR>");
}
%>
</body>
</html>
.html
<HTML>
<BODY BGCOLOR="white"><H1>jspSmartUpload : Sample 1</H1>
<HR><FORM METHOD="POST" ACTION="sample1.jsp" ENCTYPE="multipart/form-data">
<INPUT TYPE="FILE" NAME="FILE1" SIZE="50"><BR>
<INPUT TYPE="FILE" NAME="FILE2" SIZE="50"><BR>
<INPUT TYPE="FILE" NAME="FILE3" SIZE="50"><BR>
<INPUT TYPE="FILE" NAME="FILE4" SIZE="50"><BR>
<INPUT TYPE="SUBMIT" VALUE="Upload">
</FORM></BODY>
</HTML>.jsp
<%@ page language="java" import="com.jspsmart.upload.*"%>
<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" /><HTML>
<BODY BGCOLOR="white">
<H1>jspSmartUpload : Sample 1</H1>
<HR><% // 声明变量count,用来存储上传文件个数
int count=0; // 执行初始化操作
mySmartUpload.initialize(pageContext); //设定上传文件最大字节数
mySmartUpload.setTotalMaxFileSize(100000); // 上传文件到服务器
mySmartUpload.upload(); try { // 调用SmartUpload方法的save方法保存上传文件。存储时以文件原有名称存储。存储路径是这样的,首先看当前web
//应用程序下是否存在upload目录,如果有直接存储在该目录;否则,寻找web服务器所在驱动器物理路径下是否存在
// /upload目录,如果有则存储,如果没有会抛出异常。 count = mySmartUpload.save("/upload"); // 显示上传文件数量
out.println(count + " file(s) uploaded."); } catch (Exception e) {
out.println(e.toString());
}%></BODY>
</HTML>