zoukankan      html  css  js  c++  java
  • Session和Cookie

    session 工作机制
      当第一次调用getSession( )就创建了 session 对象, 并且会为该对象分配一个id,
      将这个 id 保存到session 对象中, 再赋值一个副本以 cookie 的方式保存到浏览器.
      再次调用 getSession( ) 方法的时候会将客户端传递的 cookie 进行遍历判断,
      如果有 JESSIONID 并且能和服务器端的 id 匹配 则不再生成新的内置对象, 直接返回该对象.
      如果直接访问一个 servlet. 在servlet 中不调用 getSession( )方法不会生成 session 内置对象的

    注意:
    访问 jsp 页面的时候会产生 session 对象 , 因为 jsp 是一个特殊的 Servlet,
    而且在这个特殊的 Servlet 中默认调用了 getSession( ) 方法.
    当访问 jsp 页面的时候回家过 jsp 转换成一个*.java原码文件, 之后再将该类转换为*.class 文件,
    转换后的*.class文件就是一个特殊的 servlet, 而且在该servlet 中调用 getSession( )方法.

    ex:

     1 @SuppressWarnings("serial")
     2 public class EmpServlet extends HttpServlet {
     3     @Override
     4     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
     5         //调用了 getSession() 方法
     6         req.getSession();
     7         Cookie[] cs = req.getCookies();
     8         if (cs != null) {
     9             for (Cookie c : cs) {
    10                 System.out.println(c.getName() + ":" + c.getValue());
    11             }
    12         }
    13     }
    14 }
  • 相关阅读:
    MISC | ctfshow 31
    010editor 没有分块高亮显示了
    BUUCTF | [网鼎杯 2020 朱雀组]phpweb
    python2与python3共存后,如何使用
    kali2020 装不上docker
    php代码审计整理
    [MRCTF2020]Ezpop
    kali没有tcptraceroute如何安装
    [BUUCTF] 真的很杂
    【弱网测试】备份弱网测试相关数据
  • 原文地址:https://www.cnblogs.com/yslf/p/10745577.html
Copyright © 2011-2022 走看看