Servlet生命周期分为三个阶段:
1、初始化阶段 :调用init()方法
2、响应客户请求阶段:调用service()方法
3、终止阶段:调用destroy()方法
在 Servlet 的生命期中,仅执行一次 init() 方法。是在服务器装入 Servlet 时执行的。 可以配置服务器,以在启动服务器或客户机首次访问 Servlet 时装入 Servlet。 无论有多少客户机访问 Servlet,都不会重复执行 init() 。
扩展资料:
最早支持 Servlet 技术的是 JavaSoft 的 Java Web Server。此后,一些其它的基于 Java 的 Web Server 开始支持标准的 Servlet API。Servlet 的主要功能在于交互式地浏览和修改数据,生成动态 Web 内容。这个过程为:
1、客户端发送请求至服务器端;
2、服务器将请求信息发送至 Servlet;
3、Servlet 生成响应内容并将其传给服务器。响应内容动态生成,通常取决于客户端的请求;
4、服务器将响应返回给客户端。
参考资料来源:百度百科-servlet
servlet的初始化和销毁在servlet的整个生命周期中只发生一次。因此,init()和destroy()方法在servlet的生命周期中只调用一次。
其中init()方法在首次创建servlet时调用,在处理每个用户的请求时不再调用。因此,init()方法主要用于一次性初始化操作。
例如:创建或加载一些将在servlet生命周期中使用的数据(如果有的话),或者执行一些一次性计算(如果必要的话)。同样在服务器删除或破坏servlet的实例,调用servlet的销毁方法。
所以servlet有机版本将关闭数据库连接(如果需要)停止线程后台正在运行的权利(如果需要的话),或执行其他清理。
扩展资料:
其他方法:
1、服务()方法
service()方法是servlet的核心。每当客户端请求HttpServlet对象时,该对象的service()方法就会被调用,并且一个“ServletRequest”对象和一个“ServletResponse”对象会作为参数传递给该方法。
服务()方法已经存在于HttpServlet中。默认的服务函数是调用与HTTP请求方法对应的DO函数。
2、DoGet()方法
当客户机发出HTTPGET请求或直接从HTML表单请求URL时,将调用doGet()方法。与GET请求相关联的参数被添加到URL的末尾,并与请求一起发送。当服务器端数据未被修改时,应该使用doGet()方法。
3、DoPost()方法
当客户从HTML表单发出HTTPPOST请求时,将调用doPost()方法。与POST请求相关联的参数将作为单独的HTTP请求从浏览器发送到服务器。当需要修改服务器端数据时,应该使用doPost()方法。
A. Cookie是Web服务器发送给客户端的一小段信息,客户端请求时,可以读取该信息发送到服务器端
B. 关闭浏览器意味着会话ID丢失,但所有与原会话关联的会话数据仍保留在服务器上,直至会话过期
C. 在禁用Cookie时可以使用URL重写技术跟踪会话
D. 隐藏表单域将字段添加到HTML表单并在客户端浏览器中显示
doFilter 方法