Java会话-会话何时真正创建?

Vasanth Nag KV

我的代码,

        HttpSession session = request.getSession(false);
//          Details.l.info(" 1>>>>session ID is : " + session.getId());

        Details.l.info("["+this.getClass()+"]"+"request from "+request.getRemoteHost());

        if(session==null){
            session = request.getSession(true);
            Details.l.info("["+this.getClass()+"]"+"Session Created!!!!!!!!!!!!!!!!!!!#####$@@@@");
            Details.l.info(" 2>>>>>session ID is : " + session.getId());
        }  

        Details.l.info(" 3>>>>>session ID is : " + session.getId());
    //  System.out.println("session ID is : " + session.getId());
        Details DTO = new Details(request);
        String loc = DTO.findMyLocation(); 
                session.invalidate();

在这里,我正在servlet的最开始创建一个会话,该逻辑具有以下逻辑:如果该会话已经存在,则为该特定用户提供帽子会话ID,或者如果该特定用户不存在会话,请创建一个新会话然后提供新的会话ID,在这里,新的会话是在IF条件内创建的,我已经进行了所有可能的测试(我使用了两种不同的系统,并尝试在一个系统上运行servlet),但是控件从未进入创建会话的循环。但是我每次看到servlet时都会看到一个新的会话ID !!!有人可以解释一下我的servlet的这种行为吗?我是会话和servlet的新手!!提前致谢..

JB Nizet

JSP隐式创建一个会话,除非在page指令中将session设置为false:

<%@ page session="false" %>

这就是为什么您的servlet总是看到一个已经存在的会话。只需在浏览器地址栏中输入servlet的地址(如果您在doGet()方法中提供了发布的代码),而不用通过JSP来调用它,那么您应该看到servlet创建了一个新会话。

编辑:请注意,规范说明了有关此会话属性的信息,可用于指定JSP不参与该会话。不能保证调用JSP时不会创建任何会话。只有这样,如果您尝试从此JSP访问会话,您将获得异常。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

何时创建 python 请求会话对象

来自分类Dev

使用Android Java Firebase创建会话

来自分类Dev

Java Mail:会话

来自分类Dev

Java会话实现

来自分类Dev

Java模拟FTP会话

来自分类Dev

JSF何时创建会话,并将其放入会话映射中?

来自分类Dev

检查何时开始R会话?

来自分类Dev

会话何时会被破坏?

来自分类Dev

识别ssh会话何时关闭

来自分类Dev

每个会话交换Java版本

来自分类Dev

Java端点,会话在哪里?

来自分类Dev

Java中的会话超时/到期

来自分类Dev

会话getAttribute为null Java

来自分类Dev

每个会话交换Java版本

来自分类Dev

Java PuTTY打开保存的会话

来自分类Dev

会话没有真正刷新,为什么?

来自分类Dev

MessagingException:无法在会话上执行;嵌套异常为java.lang.IllegalStateException:创建SFTP会话失败

来自分类Dev

从Java中的会话检索时如何验证会话数据?

来自分类Dev

销毁所有会话变量而不使会话 java 无效

来自分类Dev

从令牌创建Django会话

来自分类Dev

Powershell创建会话对象

来自分类Dev

创建会话PHP的饼干?

来自分类Dev

PHP未创建会话

来自分类Dev

创建结帐会话NBG

来自分类Dev

Selendoid-创建会话

来自分类Dev

我如何知道何时在Vaadin 7.x中首次创建会话?

来自分类Dev

浏览器何时删除会话Cookie?

来自分类Dev

Hibernate何时以及如何刷新其会话?

来自分类Dev

在会话期间何时设置配置单元参数?