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 值相同时,容器就会自己选择顺序来加载。