Servlet生命周期

  1. 动态资源和静态资源

  2. Servlet体系

  3. Serviet生命周期(重点)

本章内容:

一、动态资源和静态资源
  1. 静态资源:html css js 图片

    在静态Web程序中,客户端使用Web浏览器(IE、FireFox等)经过网络(Network)连接到服务器上,使用HTTP协议发起一个请求(Request),告诉服务器我现在需要得到哪个页面,所有的请求交给Web服务器,之后WEB服务器根据用户的需要,从文件系统(存放了所有静态页面的磁盘)取出内容。之后通过Web服务器返回给客户端,客户端接收到内容之后经过浏览器渲染解析,得到显示的效果。

    静态web无法连接数据库;

    静态web资源开发技术:HTML

    请求静态资源,从服务器上直接访问到文件,读取文件中的内容,将文件中的内容响应给客户端

  2. 动态资源:servlet|jsp

    如果客户端请求的是动态资源(.jsp、.asp/.aspx、.php),则先将请求转交给WEB Container(WEB容器),在WEB Container中连接数据库,从数据库中取出数据等一系列操作后动态拼凑页面的展示内容,拼凑页面的展示内容后,把所有的展示内容交给WEB服务器,之后通过WEB服务器将内容发送回客户端浏览器进行解析执行。

    动态资源需要在服务器端运行,响应给客户端是服务器端代码的运行结果

二、Servlet体系

image-20210824102429333

三、Servlet生命周期(理解)
  1. 启动tomcat:环境准备,解析web.xml文件(获取配置信息,验证文件内容的配置格式是否正确)

    如果配置有问题,在服务器启动的时候就会报错

  2. 请求服务器:

    • 阶段 时机 调用的方法(钩子)

    • 实例化 第一次向服务器发送请求或者服务器上没有servlet的对象的时候 无参数构造

    • 初始化 第一次向服务器发送请求或者服务器上没有servlet的时候,实例化之后 init(config)

    • 服务阶段 每次向服务器发送请求的时候 service()

    • 销毁阶段 服务停止的时候,项目重新加载的时候 destroy

  3. 注意事项:

    • 实例化,初始化的时机可能会发生改变,会改变为应用启动的时候

      如果配置了load-on-startup,那么将会在服务启动的时候进行实例化及初始化

      在servlet的配置当中,5的含义是:

      标记容器是否在启动的时候就加载这个servlet。

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

      当是一个负数时或者没有指定时,则指示容器在该servlet被选择(请求到达的时候)时才加载 实例化 初始化。

      正数的值越小,启动该servlet的优先级越高

    • 初始化阶段调用的时候有参数的init方法,参数的类型:ServletConfig,作用读取Servlet的初始化配置信息

      读取信息:

    • service每次请求到达会执行,每次执行之前会创建请求对象及响应对象

    • 相同类型的servlet对象在服务器运行期间只有一个。

  • 34
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值