zoukankan      html  css  js  c++  java
  • servlet笔记

      1.每个jvm中都只有一个servlet实例,在分布式应用中对于同一个servlet类会有多个实例,但是每个jvm中还是只有一个该servlet的实例。

      2.一般在容器启动时找到servlet类文件时,servlet的生命周期开始,在容器启动时,它会寻找已经部署的web应用,然后开始搜索servlet类文件,也就是说容器是根据DD搜索类的。第二步加载类可能发生在容器启动时,也有可能发生在第一个客户使用时。

      3.在调用servlet的构造函数之后我们创建了一个对象,但因为还不具有servlet性(servletness),所以只是一个普通的对象,之后容器为servlet创建一个ServletConfig对象,用该对象作为init()的参数调用函数,这样操作之后servlet对象就完全变成了一个servlet。

      4.初始化方法init()有两个,一个有参数一个没有参数,在有参数的方法体中会调用没有参数的方法。如果要覆盖init方法,则覆盖没有参数的即可,但如果非要覆盖有参数的方法,那么最好要调用super.init(ServletConfig),不过这么做也没有必要。

      5.容器建立一个servlet时,它会读取DD,并未ServletConfig创建名/值对。

      6.初始化参数ServletConfig和ServletContext是部署时常量,可以在运行时得到这些参数,但是不能设置。

      7.《java servlet&jsp 经典实例》

      8.在web.xml中注册监听者,容器通过检查监听者类继承的接口明确要监听什么类型的事件。

      9.由于http连接不会久留,所以对于容器来说,每一个请求都来自于一个新的客户。p230、

      10.9的解决方法是使用会话ID,而交换会话ID可以通过cookie来实现。

      11.得到会话的方法有二,其一:通过请求对象request.getSession(),其二:通过与会话有关的监听接口的参数event.getSession()。

      12.交换会话ID的方法有二,其一:通过cookie;其二:通过URL重写。如果客户禁用了cookie,容器就会在客户发来的后续的请求时创建新的cookie对象,而且仍然会在响应中添加Set-Cookie首部行。但是如果客户没有禁用cookie,则容器会忽略下面的URL重写。

      13.


    Shopee(虾皮)内推点击此处,岗位多多地,薪资高高地



    转载请注明出处


  • 相关阅读:
    SpringMVC组件解析
    SpringMVC简介
    spring集成web环境
    Spring基于注解的事务控制
    Spring基于XML声明式事务控制
    Spring事务控制&编程式事务控制三大对象
    基于注解的AOP开发
    基于xml的AOP开发
    python字符串操作
    赋值、深拷贝、浅拷贝
  • 原文地址:https://www.cnblogs.com/zhangcaiwang/p/6393822.html
Copyright © 2011-2022 走看看