zoukankan      html  css  js  c++  java
  • Servlet含义与工作原理


    Servlet 
    servlet是用java编写服务端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容,狭义的Servlet是指java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

    Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。

    工作模式
    1. 客户端发送请求到服务器
    2. 服务器启动并调用Servlet,Servlet根据客户端请求生成相应内容并将其传给服务器
    3. 服务器将其响应返回客户端
    4. 其他

    生命周期
    当servlet被部署在应用服务器中(应用服务器中用于管理Java组件的部分被抽象成为容器)以后,由容器控制servlet的生命周期。除非特殊指定,否则在容器启动的时候,servlet是不会被加载的,servlet只会在第一次请求的时候被加载和实例化。servlet一旦被加载,一般不会从容器中删除,直至应用服务器关闭或重新启动。但当容器做内存回收动作时,servlet有可能被删除。也正是因为这个原因,第一次访问servlet所用的时间要大大多于以后访问所用的时间。

    servlet在服务器的运行生命周期为,在第一次请求(或其实体被内存垃圾回收后再被访问)时被加载并执行一次初始化方法,跟着执行正式运行方法,之后会被常驻并每次被请求时直接执行正式运行方法,直到服务器关闭或被清理时执行一次销毁方法后实体销毁。


    与JSP的关系
    Java服务器界面(JSP)是HttpServlet的扩展。由于HttpServlet大多数用来响应HTTP请求,并返回Web界面(例如HTML,XML),所以不可避免地,在编写servlet时会涉及大量的HTML内容,这给servlet的书写效率和可读性带来很大障碍,JSP便是在这个基础上产生的。其功能是使用HTML的书写格式,在适当的地方加入Java代码片段,将程序员从复杂的HTML中解放出来,更专注于servlet本身的内容。


    JSP在首次被访问的时候被应用服务器转换为servlet,在以后的运行中,容器直接调用这个servlet,而不再访问JSP页面。JSP的实质仍然是servlet。

  • 相关阅读:
    《Cracking the Coding Interview》——第11章:排序和搜索——题目8
    《Cracking the Coding Interview》——第11章:排序和搜索——题目7
    《Cracking the Coding Interview》——第11章:排序和搜索——题目6
    《Cracking the Coding Interview》——第11章:排序和搜索——题目5
    《Cracking the Coding Interview》——第11章:排序和搜索——题目4
    数据结构,体系结构,组成原理,高等数学
    配置TortoiseGit与Github
    生成模型(Generative)和判别模型(Discriminative)
    luogu P1037 产生数 x
    【説明する】グラフ理論
  • 原文地址:https://www.cnblogs.com/6bing/p/5005951.html
Copyright © 2011-2022 走看看