1、 首先下载cos.jar包 然后加到Eclipse web工程的lib下
2、在jsp页面上创建表单 :如下
<form action="FileUpload" method="post" enctype="multipart/form-data">
<table border="0">
<tr> <td valign="top">
<strong>Please choose your document:</strong>
<br>
</td>
<td>
<input type="file" name="file1">
<br>
</td>
</tr>
<tr>
<td>
<input type="submit" value="Upload File">
</td>
</tr> </table>
</form>
红色部分一定要设置 不然上传不成功
3、创建一个servlet 如下:
public class FileUpload extends HttpServlet {
private String webTempPath;
public void init() {
webTempPath = getServletContext().getRealPath("/") + "upload";
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
response.setContentType("text/plain");
request.setCharacterEncoding("GBK");
response.setCharacterEncoding("GBK");
// file limit size of 5 MB
MultipartRequest mpr = new MultipartRequest(request, webTempPath, 120*1024*1024,"gb2312", new DefaultFileRenamePolicy());
// System.out.println("The file length is::"+mpr.getFile(webTempPath).length());
Enumeration params = mpr.getFileNames();
// mpr.getParameter("name");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet upload</title>");
out.println("</head>");
out.println("<body>");
for (int i = 1; params.hasMoreElements(); i++){
String src=new String(mpr.getFilesystemName((String)params.nextElement()));
// System.out.println(mpr.getFilesystemName((String)params.nextElement()).length());
File file=new File(webTempPath+"/"+src);
System.out.println("The file length is::"+file.length());
System.out.println(src);
out.println("The name of uploaded file " + i + " is: "+ src+ "<br><br>");
}
out.println("</body>");
out.println("</html>");
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
doPost( request, response);
}
}
4、在web.xml文件下面加入servlet的映射
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>FileUpload</servlet-name>
<servlet-class>com.icss.servlet.FileUpload</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FileUpload</servlet-name>
<url-pattern>/FileUpload</url-pattern>
</servlet-mapping>