jsp的文件怎么上传

文件上传:
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。



有关jsp的文件上传,我们需要导一个叫jspsmartupload.jar的包。

例 1.1.1

upload.jsp:

<%@ page contentType="text/html; charset=GBK" %>
<html>
<body>
<h1>
<%
if(request.getParameter("i")!=null)
{
out.print("上传了"+request.getParameter("i")+"个文件");
}
%>
</h1>
we must use post, otheriwse, report negativeArray error.
<form method="post" action="ServletHello2" enctype="multipart/form-data">
<br>
<input  type="text" name="user" value="可以中文"/>
<!--the following name does not matter.-->
<input  type="file" name="upload"/>
<input  type="file" name="upload1"/>
<br>
<input type="submit" name="Submit" value="Submit">
<input type="reset" value="Reset">
</form>
</body>
</html>




package com;
import javax.servlet.*;
import javax.servlet.http.*;
import com.jspsmart.upload.SmartUpload;
import com.jspsmart.upload.SmartUploadException;
import com.jspsmart.upload.Files;
import java.io.IOException;
import com.jspsmart.upload.File;
public class ServletHello2 extends HttpServlet {
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        /* the following statement can not work, it must be put in the last
         * position. */
        System.out.println("user1 is " + request.getParameter("user"));
        ServletContext sec = this.getServletContext();
        SmartUpload su = new SmartUpload();
        int i = 0;
        String s = sec.getRealPath("");
        System.out.println("s is" + s);
        su.initialize(this.getServletConfig(), request, response);
        try {
            su.upload();
            i = su.save(s + "/upload");
        } catch (SmartUploadException e) {
            e.printStackTrace();
        }
        Files files = su.getFiles();
        File f = (File) files.getFile(0);
        System.out.println("upload file name is " + f.getFileName());
        com.jspsmart.upload.Request r = su.getRequest();
        System.out.println("中文user is " + r.getParameter("user"));
        response.sendRedirect("upload.jsp?i=" + ("" + i));
    }
}




运行jsp后,上传以后,console里的输出结果是:


user1 is null
s isD:\eclipseJee\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ServletHello
upload file name is jspsmartupload.jar
中文user is 可以中文