zoukankan      html  css  js  c++  java
  • [javaEE] Servlet的调用过程和生命周期

    http协议的请求头中获取到要访问的资源,查找web.xml文件找到对应的servelet

    Sevlet的生命周期

     

    Servlet在第一次被访问的时候,服务器创建出Servlet对象,创建出对象以后会直接调用init方法做初始化操作,创建出的对象会一直驻留在内存中为对这个Servlet的访问服务,每次对这个Servlet的访问都会导致service方法执行,当web应用被移除出容器时或者服务器被关闭时,随着web应用的销毁Servlet会被销毁,在销毁之前,服务器会调用Servletdestroy方法做一些善后的工作

     

    每次调用service()方法的时候,会传递进来两个参数:Request对象,Response对象

    Request对象里面包含 http请求头和实体内容

    Response对象是空的

    调用Response对象的getWriter().write()方法,往Response对象中写入内容

    服务器把Response对象中的内容组织成Http协议返回给浏览器

     

     

    Servlet的继承结构

     

    Servlet——接口定义了Servlet应该具有的基本方法

    |——GenericServlet 通用基本Servlet实现,把service方法设计为抽象方法,需要子类去实现

    |——HttpServlet实现了父类中的service方法,判断当前的请求方式,调用对应的doXXX方法,需要子类去继承并覆盖对应的doGet()或者doPost()方法

     

    Servlet的细节

     

    一个<servlet>可以对应多个<servlet-mapping>

    <url-partten>中可以使用*匹配符,由于*的引入,有可能一个路径被多个url-partten匹配,优先级:哪个最像找哪个,*.后缀 的优先级最低

    <servlet>下面可以配置<load-on-start-up>可以用来指定启动顺序

     

  • 相关阅读:
    python gzip get url
    nginx 日志解析,nginx缓存
    Keepalived
    SEO 搜索引擎优化
    检测网站是否支持gzip的本地代码
    使用logrotate做nginx日志轮询
    YUI Compressor下载
    Adobe Illustrator有 机会装一下
    同步时间
    买不起书啊nginx http server filetype:pdf 30刀
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5401446.html
Copyright © 2011-2022 走看看