zoukankan      html  css  js  c++  java
  • Servlet

    Servlet技术

    CGI(Common Gateway Interface) 是WWW技术中最重要的技术之一,有着不可替代的重要地位。CGI是外部应用程序(CGI程序)与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的规程。

    CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。

    1. 什么是servlet

    a)         制定javaee的时候做的一个规范,然后提供接口即可,面向接口的编程

    b)         Servlet小程序用于创建动态网页的,把http请求和响应都封装成了HTTPServletRequest,httpServletResponse。然后再dopost和doget中做相应的处理并回应httpServletResponse反馈给用户

    1. Servlet生命周期

    a)         Init初始化

    b)         Service进行处理客户端的请求

    c)         Servlet通过调用destroy方法种植

    d)         最后servlet是通过jvm进行垃圾回收器的回收

    e)        

    1. Servletconfig和servletContext

    a)         Config获取了初始化设置的参数信息getInitParameter 值getParameterNames 名

    b)         Context 实现多个servlet共享web应用的信息数据

    c)          Servletconfig是产生初始化参数(由servlet容器在文件中指定)和servletcontext对象。

    请求和响应

    1. HttpServletResponse 对象
    2. HttpServletResponse 应用

    a)         中文输出乱码问题:字符和字节之间的转码通过查码表完成,将字符转换成字节的过程叫做编码,将字节转成字符的过程称为解码。编码解码不一致就会出现乱码。

    b)         网页定时刷新

    c)         禁止浏览器缓存页面

    d)         请求重定向

    1. HttpservletRequest 对象
    2. HTTPServletRequest应用

    a)         乱码问题

    b)         请求转发

    5.    重定向和转发的区别

    1. 什么是servlet?需要哪两步?

    a)         是sun公司提供的一门专门开发动态web资源的技术, 可以实现和客户端的交互,接受客户端请求和给客户端返回响应

    b)         需要编写一个java类实现servlet接口,开发的java类部署到服务器中

    6.解析过程

             Tomcat在加载web应用时, 就会把相应的web.xml文件中的数据读入到内存中。所以在收到web请求的时候只要参考内存里面xml配置数据

    1. servlet运行过程

    a)         web服务器首先检查是否已经装载并创建了该servlet的实例对象, 如果是,则直接执行第四步,否则,执行第二步、

    b)         装载并创建该servlet的一个实例对象

    c)         调用servlet实例对象的init()方法

    d)         创建一个用于封装HTTP请求消息的HTTPServletRequest对象和一个代表HTTP响应消息的HTTPServletResponse对象,然后调用servlet的service()方法并将请求和响应对象作为参数传递进去、

    e)         Web应用程序被停止或重新启动之前, servlet引擎将卸载servlet, 并在卸载之前调用servlet的destroy方法

    f)         

    1. servlet的生命周期

    a)         init detory 方法只会调一次创建一次实例,分别为初始化和销毁的时候进行创建

    b)          而service方法会调用多次,每次HTTP请求都会创建实例。

    c)         Service里面有doPost 和 doGet 在没指认的时候默认调用doGet 有指认Post的时候才用post(在前端页面的form标签里面的method)

    1. ServletConfig对象

    a)         首先得知道的事web.xml文件中可以使用一个或者多个的<context-param>标签为servlet配置一些初始化参数

    b)         然后servletConfig对象会自动将这些初始化参数封装到自己里面。

    1. ServletContext对象

    a)         ServletContext是一个全局对象它是被servletConfig所维护的。 所以可以通过servletconfig.servletContext获取共有的环境变量,servlet之间的通讯也是这样实现的

    1. 流程图

    a)         浏览器访问Tomcat

    b)         Tomcat转发到web application上

    c)         找到这个应用程序的xml配置文件

    d)         配置文件上找到相对应的servlet映射

    e)         找到servlet

    f)          第一次访问的实例化该servlet对象

    g)         调用init

    h)         调用service方法

    i)           返回响应

    j)           结束程序的时候会销毁它

  • 相关阅读:
    我在ZZ这八年
    安装JBpm
    用程序实现HTTP压缩和缓存
    (转)WPF Custom Control Dependency Property Gotcha
    开发一个Word的代码高亮插件
    (转)Getting rid of the DSL model explorer
    (翻译)LearnVSXNow! #16 创建简单的编辑器2
    对 COM 组件的调用返回了错误 HRESULT E_FAIL。
    Word中使用代码高亮插件
    使用HttpWebRequest post数据时要注意UrlEncode
  • 原文地址:https://www.cnblogs.com/jwlxtf/p/7880899.html
Copyright © 2011-2022 走看看