Java——servlet容器

javax servlet Servlet 接口

Servlet编程需要使用servlet和servlet http两个包下的接口和类。所有类和接口中,servlet servlet接口最重要。所有servlet程序都必须实现实现该接口或者继承实现了该接口的类。

Servlet中声明5个方法,签名如下:

init()、service()和destroy()与生命周期相关,实例化servlet类后,servlet会调用init初始化。只会调用一次,后执行服务方法。

当servlet的一个客户端请求到达后,servlet容器就调用相应的servlet的servlet的service()方法,将servletRequest和servletResponse作为参数传入。整个生命周期,service()会被调用多次。

将servlet实例从服务移除前,容器会调用destory()方法。容器关闭或释放内存时,将实例移除,只有当servlet实例service()方法中所有线程都退出或超时,调用destory()方法。

步骤如下:1、第一次调用servlet时,载入servlet类,调用init;

2、每个request请求,创建ServletRequest实例和一个ServletResponse实例:

3、调用service,requset和response参数传入;

4、关闭servlet类,调用destory。

 

下面是servlet容器执行的框架图:

Java——servlet容器_第1张图片

main方法创建HttpServerl的一个实例,调用await,等待http请求,为接受每个请求创建Request和Response对象,并根据http请求,是静态还是servlet,将该HTTP请求发给StaticResourceProcessor实例或者一个ServletProcessor。

你可能感兴趣的:(Tomcat)