JSP本质就是Servlet!
1.Servlet的生命周期:
从Servlet被创建到服务再到死亡的过程,执行:
- 一次init()
- 若干次service()
- 一次destroy()
servlet的创建时机:
- 一般情况是客户端第一次请求某个Servlet时,服务器创建该servlet的对象
- 在标签配置时,服务器在启动时创建servlet对象。
servlet对象:
servlet由servlet引擎调用,不能独立运行。客户端多次请求,服务器只创建一个servlet实例,之后驻留内存中继续服务直至web容器退出才销毁它。
servlet生命周期时序图:
2. servlet3.0新特性
1.可以执行异步处理:
原来,在服务器响应之前,浏览器看不到响应的内容,只有响应结束时,浏览器才能一次性显示全部相应内容。异步处理可以让服务器开始响应后,浏览器就看到响应内容,不用等待服务器响应结束。
实现异步处理的代码:
AsyncContext ac=request.startAsync(request, response);
ac.start(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
}
});
注意:需要在注解中设置支持异步:
@WebServlet(name = “Test”, urlPatterns = { “/Test” },asyncSupported=true)