建立自己的Servlet:
1.举的这个例子是一个页面提交信息到servlet,文件内容如下:
form.xml文件:
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=Windows-31J">
</head>
<body>
<form method="post" action="../Test"> //(1)method、actionの指定
<input type="text" name="name1"><br><br>
<input type="checkbox" name="vehicle" value="車">車<br>
<input type="checkbox" name="vehicle" value="バイク">バイク<br>
<input type="checkbox" name="vehicle" value="飛行機">飛行機<br><br>
<input type="submit" value="submit">
</form>
</body>
</html>
--------------------------------------------------------------------------------------------------------------------------------------
RequestServ.java文件:
package servletTest;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class RequestServ extends HttpServlet {
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException,
IOException {
// (1)エンコード方式の指定
res.setContentType("text/html; charset=Windows-31J");
// (2)パラメータのエンコード方式の指定
req.setCharacterEncoding("Windows-31J");
// (3)PrintWriterオブジェクトの生成
PrintWriter out = res.getWriter();
out.println("<HTML>");
out.println("<BODY>");
// (4)name1パラメータの取得
out.println(req.getParameter("name1") + "<br>");
// (5)vehicleパラメータの取得
String vehicle[] = req.getParameterValues("vehicle");
for (int i = 0; i < vehicle.length; i++) {
out.println(vehicle[i] + "<br>");
}
out.println("</BODY>");
out.println("</HTML>");
}
}
这2个文件都放在scr下的servletTest目录下。
2 .编译
如果使用的是非自动编译工具的话,把生成的class文件放到classes的servletTest目录下。
3 .修改webapps/test/WEB-INF/web.xml,添加servlet和servlet-mapping
编辑后的web.xml如下所示:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>My Web Application</display-name>
<description>
A application for test.
</description>
<servlet>
<servlet-name>Test</servlet-name>
<display-name>Test</display-name>
<description>A test Servlet</description>
<servlet-class>RequestServ</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>/Test</url-pattern>
</servlet-mapping>
</web-app>
这段话中的servlet这一段声明了你要调用的Servlet,而servlet-mapping则是将声明的servlet"映射"到地址/Test上
5 .好了,重启动Tomcat,启动浏览器,输入http://localhost:8080/Test/src/servletTest/form.html,然后点击submit 如果看到输出刚才输入的信息以及选中的项目的话,就说明编写的servlet成功了。
注意:修改了web.xml以及新加了class,都要重启Tomcat