java的servlet执行过程是怎么样

 

答:

Servlet执行过程:程序第一次访问,会调用servlet的init()方法初始化(只执行一次),每次程序执行都会根据请求调用doGet()或者doPost()方法,程序停止(停止tomcat)调用destory()方法。

注意:上面过程是没配置<load-on-startup>标签的情况

在web.xml配置servlet的时候可以配置<load-on-startup>1</load-on-startup>标签,其含义是:标记容器是否在启动的时候就加载这个servlet。

当值为0或者大于0时,表示容器在应用启动时就加载这个servlet;

当是一个负数时或者没有指定时,则指示容器在该servlet被选择时才加载。

正数的值越小,启动该servlet的优先级越高。如果我们在web.xml中设置了多个servlet的时候,可以使用load-on-startup来指定servlet的加载顺序,服务器会根据load-on-startup的大小依次对servlet进行初始化。

配置load-on-startup后,servlet在startup后立即加载,但只是调用servlet的init()方法,用以初始化该servlet相关的资源。初始化成功后,该servlet可响应web请求;如未配置load-on-startup,容器一般在第一次响应web请求时,会先检测该servlet是否初始化,如未初始化,则调用servlet的init()先初始化,初始化成功后,再响应请求。

最新文章

  1. html5的web存储
  2. SubSonic3.0使用存储过程查询时,不能使用output参数返回值的问题修改
  3. gradle项目中资源文件的相对路径打包处理技巧
  4. java数组引用
  5. arduino 蓝牙控制RGB LED灯
  6. Android 长按setOnItemLongClickListener 注意细节
  7. js--事件对象的理解3
  8. Redis-rdb持久化
  9. VS2017 调试不能命中断点问题
  10. C#获取文件夹下的所有文件的文件名(转载)
  11. 重温《STL源码剖析》笔记 第五章
  12. python文件读书笔记
  13. android项目导入eclipse变成java项目——修改.project文件——亲测有效
  14. textarea文本域宽度和高度width及height自动适应实现代码
  15. Build step &#39;Execute shell&#39; marked build as failure解决
  16. Win10上运行Docker
  17. pyinstaller打包pyqt文件(转)
  18. VMware桥接模式连接局域网
  19. spring boot由浅入深(二)spring boot基本命令及操作
  20. Unity5 Shader Stripping 导致 LightMap 全部丢失的解决方法

热门文章

  1. SpringBoot框架之通用mapper插件(tk.mybatis)
  2. 使用BCP实用工具导出导入数据
  3. aiops相关
  4. 第八届蓝桥杯C/C++程序设计本科B组决赛 ——发现环(编程大题_签到题_tarjan判环)
  5. python算法与数据结构-常用查找算法一(37)
  6. Postman发送请求,及后台接收
  7. 《hello-world团队》第七次作业:团队项目设计完善&amp;编码
  8. 让你弄懂 call、apply、bind的应用和区别
  9. vue 传入一个对象的所有属性
  10. 使用webuploader实现大文件上传分片上传