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(虾皮)内推点击此处,岗位多多地,薪资高高地



    转载请注明出处


  • 相关阅读:
    DGA域名可以是色情网站域名
    使用cloudflare加速你的网站隐藏你的网站IP
    167. Two Sum II
    leetcode 563. Binary Tree Tilt
    python 多线程
    leetcode 404. Sum of Left Leaves
    leetcode 100. Same Tree
    leetcode 383. Ransom Note
    leetcode 122. Best Time to Buy and Sell Stock II
    天津Uber优步司机奖励政策(12月28日到12月29日)
  • 原文地址:https://www.cnblogs.com/zhangcaiwang/p/6393822.html
Copyright © 2011-2022 走看看