zoukankan      html  css  js  c++  java
  • request.getSession(boolean create)的正确使用姿势

    javax.servlet.http.HttpServletRequest 中有一个创建session会话的方法

    
    

    /**
     * 如果create设置true,返回当前的HttpSession,如果没有会话,创建一个新的会话
     * 如果create设置false,如果当前有会话那就返回,如果没有会话,就返回null
     */
    public HttpSession getSession(boolean create);

    /**
     * 等同于getSession(true);
     */
    public HttpSession getSession();

    使用要点:

    1、创建会话场景

    这种逻辑放在登陆、授权业务中,用户登陆成功之后,自然而然的需要保持用户当前的访问会话。

    此时使用getSession(true),或者getSession(),然后session可以放入具体的attribute,更详细描述当前用户会话信息。

    2、查找当前会话

    如果我们当前逻辑需要查找会话,如果会话为空,直接抛出会话不存在,权限不足的信息。

    这时使用getSession(false),即查找当前的会话,没有会话就是返回为空。避免了使用getSession()又会创建一次多余的没有经过授权的会话。

    使用getSession(false)得到当前session之后,再进一步获取当前的attribute,做下一步业务处理。

    全文完。

  • 相关阅读:
    洛谷【P1109 学生分组】 题解
    卡特兰数
    并查集
    深度优先搜索DFS;递归
    【71】序列模型和注意力机制
    c/c++ 常用的几个安全函数
    win32 Ui 编程 收集
    vc获取特殊路径(SpecialFolder)
    std::map 自定义排序
    16-----BBS论坛
  • 原文地址:https://www.cnblogs.com/conge/p/5439871.html
Copyright © 2011-2022 走看看