#1.新建一个类,该类继承Servlet,并在每个类里面输出一条信息
package com.test.javaweb;
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class HelloServlet implements Servlet {
@Override
public void destroy() {
// TODO Auto-generated method stub
System.out.println("destroy");
}
@Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
System.out.println("getServletConfig");
return null;
}
@Override
public String getServletInfo() {
// TODO Auto-generated method stub
System.out.println("getServletInfo");
return null;
}
@Override
public void init(ServletConfig arg0) throws ServletException {
// TODO Auto-generated method stub
System.out.println("init");
}
@Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("service");
}
public HelloServlet() {
super();
// TODO Auto-generated constructor stub
System.out.println("Constuctor");
}
}
#2.在web.xml里面配置映射
<!-- 配置映射 -->
<servlet>
<servlet-name>helloServlet</servlet-name>
<servlet-class>com.test.javaweb.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>helloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
解释:
2.1 <servlet>与 <servlet-mapping>必须要成对出现
2.2 <url-pattern>中"/"表示WEB应用根目录,本示例为http://localhost:8080/TestJavaWeb
2.3 在根目录后面配上hello,即http://localhost:8080/TestJavaWeb/hello,该路径通过<servlet-name>映射找到其对应的类,即请求http://localhost:8080/TestJavaWeb/hello这个路径,可以找到com.test.javaweb.HelloServlet这个类,执行该类中的方法。 #3.执行该类方法
Servlet要实现的事情简单的理解为:通过一个路径找到某个类,执行该类中的方法。
请求http://localhost:8080/TestJavaWeb,找到com.test.javaweb.HelloServlet这个类,执行该类中的方法。
请求输出
Constuctor
init
service
由此可见,先执行构造器,在执行初始化方法,最后执行服务方法。