初识Servlet

一、servlet的一生
servlet生命状态图

详细图

当一个请求映射到一个从未被访问过的servlet时,容器还未创建该servlet对象,所以需要创建该对象。容器首先会载入该serlert class,创建servlet对象,调用init()[仅仅一次],完成初始化工作;随后调用service()方法处理请求;在servlet生命结束前,调用destroy()方法做垃圾清理工作。

三个重要时间点
1、init()何时调用: servlet实例创建后,在提供服务之前,要对servlet调用init()
2、serrvice()何时调用:在一个客户请求到来后,容器会创建或从线程池获取一个线程,并调用servlet的service()方法。在servlet()中,判断Http方法(get or post),相应调用doGet() or doPost()
3、doGet()/doPost()由service()方法调用,在里面处理我们的业务逻辑

通常,一个servlet class只有一个实例,也就是说对同一个servlet的多个请求共用一个servlet实例,相应的多个请求处理线程共用同一个servlet实例。
每一个请求到来,创建or从线程池获取一个线程,并调用servlet的service()方法处理请求。

二、servlet继承结构API


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容