JavaEE复习二
Posted 冯廷鑫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaEE复习二相关的知识,希望对你有一定的参考价值。
Servlet应用开发接口:
javax.servlet.Servlet:
- init()方法:调用在构造方法之后,在service方法之前;
- service()方法:调用此方法允许Servlet响应请求,在Servlet成功初始化之前无法调用;
- destroy()方法:当一个Servlet被从服务中去除时,Servlet会调用此方法。当这个对象service()方法所有的线程未全部退出或者被容器认为发生超时操作时,此方法不会调用
- getServletConfig()方法:get 一个 ServletConfig,
- getServletInfo()方法:允许Servlet向主机的Servlet运行提供有关信息
Servlet生命周期:
- 客户端发送请求
- Servlet容器解析请求
- 创建Servlet实例
- 调用init方法
- 调用service方法
- 输出响应信息
- 返回响应
- 调用destory方法
第一次访问Servlet时:
会调用servlet的构造方法,调用init()在一个Servlet的生命周期中只执行一次
在服务器启动加载网站是:
会调用service方法
具体什么时候加载需要通过web.xml配置文件中对应servlet设置项<load-on-startup>节点进行设置:
1 load-on-startup标记容器是否在启动的时候实例化并调用其init()方法的优先级。 2 它的值表示servlet应该被载入的顺序 3 当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet; 4 如果值小于0或未指定时,则表示只有在第一次请求的容器才在该servlet调用初始化函数 5 正值越小,servlet的优先级越高,应用启动时就越先加载。 6 值相同时,容器就会自己选择顺序来加载。
Servlet在什么时候被销毁:
服务器关闭;更新、停止web模块的时候;由Servlet容器根据情况(destory方法)
destory()方法:
在Servlet实例被销毁之前调用,在一个Servlet的生命周期中只执行一次
Servlet生命周期可以分为四个阶段(总结):
- 加载和实例化:调用构造方法,由servlet容器完成
- 初始化:调用init方法
- 处理客户请求:service方法(doGet、doPost)
- 销毁:销毁之前调用destroy方法
ServletConfig包含web程序部署描述符中定义的参数,servletConfig是由Servlet容器实例化
每个Web应用启动后,Servlet容器都会创建唯一的一个ServletContext对象,该对象包含整个web程序的信息
Servlet是多线程应用
以上是关于JavaEE复习二的主要内容,如果未能解决你的问题,请参考以下文章