#### servlet:UploadImage.java #######package com.nic;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.util.regex.*;
import org.apache.commons.fileupload.*;public class UploadImage extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GB2312"; // Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//PrintWriter out = response.getWriter();
try {
String file_name;
DiskFileUpload upload = new DiskFileUpload();
List items = upload.parseRequest(request);
upload.setSizeMax(3*102400);
//maximum size that will be stored in memory?
// 设置最多只允许在内存中存储的数据,单位:字节
//upload.setSizeThreshold(4096);
// 设置一旦文件大小超过getSizeThreshold()的值时数据存放在硬盘的目录
upload.setRepositoryPath("d:\\temp");
//开始读取上传信息
Iterator iter = items.iterator();
FileItem item;
while (iter.hasNext()) {
item = (FileItem) iter.next();
if (item.isFormField()) {
//
} else {
//取文件本地路径加文件名
String itemName = item.getName();
file_name = itemName.substring(itemName.lastIndexOf("\\")+1);
file_name = "D:\\" + file_name;
// out.println(file_name);
File newFile = new File(file_name);
if (newFile.exists()) {
//
}
else {
newFile.createNewFile();
item.write(newFile);
}
}
}
} catch (Exception e) {
System.out.println("上传出错:"+e);
} }
}##### upload.html #####<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>文件上传演示</h1><form name="uploadform" method="POST" action="Test1" enctype="multipart/form-data"><table border="1" width="450" cellpadding="4" cellspacing="2"
bordercolor="#9BD7FF"> <tr>
<td width="100%" colspan="2">文件1:<input name="x" size="40"
type="file"></td>
</tr> <tr>
<td width="100%" colspan="2">文件2:<input name="y" size="40"
type="file"></td>
</tr> <tr>
<td width="100%" colspan="2">文件3:<input name="z" size="40"
type="file"></td>
</tr></table><br />
<br /><table> <tr>
<td align="center"><input name="upload" type="submit"
value="开始上传" /></td>
</tr></table></form></body>
</html>
##### 错误提示:####java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputStream
org.apache.commons.fileupload.DefaultFileItemFactory.createItem(DefaultFileItemFactory.java:103)
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:350)
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:302)
com.nic.UploadImage.doPost(UploadImage.java:19)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.util.regex.*;
import org.apache.commons.fileupload.*;public class UploadImage extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GB2312"; // Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//PrintWriter out = response.getWriter();
try {
String file_name;
DiskFileUpload upload = new DiskFileUpload();
List items = upload.parseRequest(request);
upload.setSizeMax(3*102400);
//maximum size that will be stored in memory?
// 设置最多只允许在内存中存储的数据,单位:字节
//upload.setSizeThreshold(4096);
// 设置一旦文件大小超过getSizeThreshold()的值时数据存放在硬盘的目录
upload.setRepositoryPath("d:\\temp");
//开始读取上传信息
Iterator iter = items.iterator();
FileItem item;
while (iter.hasNext()) {
item = (FileItem) iter.next();
if (item.isFormField()) {
//
} else {
//取文件本地路径加文件名
String itemName = item.getName();
file_name = itemName.substring(itemName.lastIndexOf("\\")+1);
file_name = "D:\\" + file_name;
// out.println(file_name);
File newFile = new File(file_name);
if (newFile.exists()) {
//
}
else {
newFile.createNewFile();
item.write(newFile);
}
}
}
} catch (Exception e) {
System.out.println("上传出错:"+e);
} }
}##### upload.html #####<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>文件上传演示</h1><form name="uploadform" method="POST" action="Test1" enctype="multipart/form-data"><table border="1" width="450" cellpadding="4" cellspacing="2"
bordercolor="#9BD7FF"> <tr>
<td width="100%" colspan="2">文件1:<input name="x" size="40"
type="file"></td>
</tr> <tr>
<td width="100%" colspan="2">文件2:<input name="y" size="40"
type="file"></td>
</tr> <tr>
<td width="100%" colspan="2">文件3:<input name="z" size="40"
type="file"></td>
</tr></table><br />
<br /><table> <tr>
<td align="center"><input name="upload" type="submit"
value="开始上传" /></td>
</tr></table></form></body>
</html>
##### 错误提示:####java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputStream
org.apache.commons.fileupload.DefaultFileItemFactory.createItem(DefaultFileItemFactory.java:103)
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:350)
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:302)
com.nic.UploadImage.doPost(UploadImage.java:19)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货