servlet的生命周期:a.servlet容器创建servlet的一个实例
b.容器调用该实例的init()方法
c.如果容器对该servlet有请求,则调用此实例的service()方法
d.容器在销毁本实例前调用它的destroy()方法
e.销毁并标记该实例以供作为垃圾收集一旦请求了一个servlet,就没有办法阻止容器执行一个完整的生命周期。
容器在servlet首次被调用时创建它的一个实例,并保持该实例在记忆体中,让它对所有的请求进行处理。容器可以决定在任何时候把这个实例从记忆体中移走。在典型的模型中,容器为每个servlet创建一个单独的实例,容器并不会每接到一个请求就创建一个新线程,而是使用一个线程池来动态的将线程分配给到来的请求,但是这从servlet的观点来看,效果和为每个请求创建一个新线程的效果相同。