servlet开发及其生命周期 、设计模式

(一)开发servlet步骤:

1)创建类并继承servlet类,重写doget()或者dopost()方法。
2)配置URL与servlet的映射,可通过xml配置,也可以通过注解配置
3)通过浏览器访问servlet。

(二)sevlet生命周期:

1)在客户端请求servlet时,Tomcat容器会检测是否有请求的servlet的实例存在。
2)如果servlet实例不存在,则调用其构造方法创建servlet的实例,在实例被创建成功后调用init()方法进行初始化工作,初始化成后将该Servlet保存起来以备后续请求使用,再调用service()方法处理客户端的请求。如果是get请求,service()方法调用doGet()方法处理客户端请求;如果是post请求,service()方法调用doPost()方法处理客户端请求。
3)如果Servlet实例存在,则调用其service方法,如果是get请求,service()方法调用doGet()方法处理客户端请求,如果是post请求,service()方法调用doPost()方法处理客户请求。
4)当容器关闭时,调用Servlet的destroy()方法。

可见一个Servlet在整个生命周期中,只实例化一次,因此Servlet是单例模式,Servlet对象是由Tomcat容器实例化的。Servlet的生命周期经历了四个阶段,分别是实例化、初始化、服务、销毁。在Servlet生命周期中涉及到了三个重要的方法,实例化时调用了init()方法,用于初始化操作;服务时调用了service()方法,用于响应请求;销毁时调用了destroy()方法,用于回收资源;而init()方法和destroy()方法只会被调用一次,service()方法每请求一次就被调用一次。
servlet开发及其生命周期 、设计模式_第1张图片
注:

由于在一个Web容器中,Servlet的实例只有一个,每个请求都在单独的一个线程中运行,以防止线程安全问题发生。

(三)单例模式
是指一个类只有一个实例。单例模式是设计模式中的一种。
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。设计模式共有23种,分三大类

创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。
结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。
行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模式、策略式、职责链模式(责任链模式)、访问者模式。

你可能感兴趣的:(java)