Servlet是单例对象
整个tomcat运行阶段只有一个对象,默认情况第一次访问的时候调用无参数的构造器创建对象,如果在web.xml文件中配置类标签<load-on-startup>
该对象的Servlet会随着tomcat的启动创建。(或在注解,tomcat启动项目的时候会自动扫描所有Servlet文件,有注册会把注解和类关联记录loadOnStartup该servlet对象随tomcat启动而创建,值表示创建的优先级值越小越先创建(负数是第一次访问的时候创建(默认的)))
注解等价于web.xml的配置
package com.briup.web.Servelt;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/*
* 注解等价于web.xml的配置
* <servlet>
<servlet-name>four</servlet-name>
<servlet-class>com.briup.web.Servelt.FourServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>four</servlet-name>
<url-pattern>/FourSer</url-pattern>
</servlet-mapping>
*
* 注解,tomcat启动项目的时候
* 会自动扫描所有Servlet文件,
* 有注册会把注解和类关联记录
* loadOnStartup该servlet对象随tomcat启动
* 而创建,值表示创建的优先级
* 值越小越先创建(负数是第一次访问
* 的时候创建(默认的))
*/
//@WebServlet("/FourSer")
@WebServlet(urlPatterns={"/FourSer",
"/FS"},name="fourTT",
loadOnStartup=0)
public class FourServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/*
* 1.Servlet是单例对象,整个tomcat运行
* 阶段只有一个对象,默认情况
* 第一次访问的时候调用无参数的
* 构造器创建对象,如果在web.xml文件
* 中配置类标签<load-on-startup> 该对象
* 的Servlet会随着tomcat的启动创建
* 2.构建对象之后调用init方法初始化
* 3.直接调用service方法,传入封装
* 好的ServletRequest对象和
* ServletResponse对象
* 4.tomcat正常关闭调用destory方法
*/
public FourServlet() {
System.out.println("FourServlet create");
}
@Override
public void destroy() {
System.out.println("destroy......");
}
@Override
public void init() throws ServletException {
System.out.println("init.....");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("service......");
response.getWriter().append("Served at: ").append(request.getContextPath());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}