在这里, 我们将学习如何将文件上传到服务器。要将文件上传到服务器, 方法必须是post, 而enctype必须是html文件中的multipart / form-data。例如:
index.html
<html>
<body>
<form action="go" method="post" enctype="multipart/form-data">
Select File:<input type="file" name="fname"/><br/>
<input type="submit" value="upload"/>
</form>
</body>
</html>
在servlet中将文件上传到服务器的示例
现在, 为了将文件上传到服务器, 可以有多种方法。但是, 我将使用oreilly提供的MultipartRequest类。要使用此类, 你必须具有cos.jar文件。如果你要下载此示例, 我们将带代码的cos.jar文件。
UploadServlet.java
import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import com.oreilly.servlet.MultipartRequest;
public class UploadServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
MultipartRequest m=new MultipartRequest(request, "d:/new");
out.print("successfully uploaded");
}
}
MultipartRequest类构造函数中传递了两个参数, 第一个是HttpServletRequest对象, 第二个是String对象(用于位置)。在这里, 我假设你在D驱动程序中有新文件夹。
web.xml文件
此配置文件提供有关servlet的信息。
<web-app>
<servlet>
<servlet-name>UploadServlet</servlet-name>
<servlet-class>UploadServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UploadServlet</servlet-name>
<url-pattern>/go</url-pattern>
</servlet-mapping>
</web-app>
下载此示例(无IDE开发)
下载此示例(使用Myeclipse IDE开发)
下载此示例(使用Netbeans IDE开发)
<<上一页下一页>>
评论前必须登录!
注册