一、servlet?
它 是运行在服务器端的小程序,是一个接口
生命周期:
init():第一次访问servlet的时候调用(初始化)
service():每一次访问都会调用(处理请求和响应)
destroy():关闭服务器,销毁。
http请求和响应:
二、编写Servlet
1)、手写一个Servlet,实现Servlet接口,重写方法(只需知道 init(),service(),destroy() 这三个就行了)
public class MyServlet1 implements Servlet {
@Override
public void init(ServletConfig servletConfig) throws ServletException { }
@Override
public ServletConfig getServletConfig() { return null; }
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {}
@Override
public String getServletInfo() { }
@Override
public void destroy() {}
}
2)、(常用)右键创建一个Servlet文件就OK了,里面只有两个方法,一个doPost(),一个doGet(),代表请求方式不同,调用不同的方法
三、用Servlet
1)、在xml文件中注册servlet
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>com.servlet.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/myServlet</url-pattern>
</servlet-mapping>
访问执行的顺序:
2)、采用注解的方式获取servlet,效果跟上面一样
@WebServlet(name = "MyServlet")
public class MyServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("hello");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
}
WebServlet注解里的一些抽象方法: