1、生命周期全过程:
加载:ClassLoader
实例化:new
初始化:init(ServletConfig) 只调用一遍
处理请求:doGet doPost service
退出服务:destory()
2、只有一个对象 Servlet从开始到结束只有一个对象。 实例化的时机:当客户端第一次访问过来时。当实例化完成时会帮忙调用init方法。
3、多线程 (让一些线程闲着,去快速处理新的请求)
这个地方会有问题,多个线程使用一个对象,因此尽量不要在Servlet中不要定义成员变量。
4、Servlet下得两个init方法:init()和init(servletConfig config);Tomcat默认初始化带参数的init方法,带参数的init方法中调用了无参的Init().
无参的Init()是供程序员重写的,而又避免重写时忘记初始化config.
ServletConfig:servlet的配置信息。
5、Servlet初始化参数:
<servlet>
<servle-name>hello</servlet-name>
<servlet-class>com.cn.synjones.test.HelloWorldServlet</servlet-class>
<init-param>
<param-name>name</para-name>
<param-value>小王</param-value>
</init-param>
</servlet>
6、获取初始化的参数值。this.getServletConfig().getInitParameter(“param-name”);