java session id 生成_Java通过sessionId获取Session「建议收藏」

java session id 生成_Java通过sessionId获取Session「建议收藏」Servlet2.1之后不支持SessionContext里面getSession(Stringid)方法。但是,我们可以通过HttpSessionListener监听器和全局静态map自己实现一个SessionContext。MySessionContext.java:publicclassMySessionContext{privatestaticHashMapmymap=n…

大家好,又见面了,我是你们的朋友全栈君。

Servlet2.1之后不支持SessionContext里面getSession(String id)方法。

但是,我们可以通过HttpSessionListener监听器和全局静态map自己实现一个SessionContext。

MySessionContext.java:

public class MySessionContext {

private static HashMap mymap = new HashMap();

public static synchronized void AddSession(HttpSession session) {

if (session != null) {

mymap.put(session.getId(), session);

}

}

public static synchronized void DelSession(HttpSession session) {

if (session != null) {

mymap.remove(session.getId());

}

}

public static synchronized HttpSession getSession(String session_id) {

if (session_id == null)

return null;

return (HttpSession) mymap.get(session_id);

}

}

MySessionListener.java:

public class MySessionListener implements HttpSessionListener {

public void sessionCreated(HttpSessionEvent httpSessionEvent) {

MySessionContext.AddSession(httpSessionEvent.getSession());

}

public void sessionDestroyed(HttpSessionEvent httpSessionEvent) {

HttpSession session = httpSessionEvent.getSession();

MySessionContext.DelSession(session);

}

}

web.xml添加一个监听器:

listener.MySessionListener

根据sessionId获取Session对象:

String sessionId = request.getParameter(“sessionId”);

HttpSession session = MySessionContext.getSession(sessionId);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160358.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • strstr c语言函数实现,strstr函数实现(C语言)

    strstr c语言函数实现,strstr函数实现(C语言)strstr函数实现(C语言)second6020180601数组strstr用来字符串查找子串。数据结构顺便说一下,字符串操做函数是C语言中很是重要的函数,里面包括了指针的精华,同时对学习数据结构,如链表,数组,有很是好的练手方法。同时,知道内部实现,是基础中的基础。因此学习字符串操做函数是深刻学C的必经之路。函数#include#includeconstchar*strs…

    2022年6月25日
    30
  • 在vb中什么被称为对象_vb控件数组怎么创建

    在vb中什么被称为对象_vb控件数组怎么创建在BCB中使用VCL控件数组(一)抱雪昨晚和网友邬彦华在OICQ上闲聊,他言及正在为朋友编一个游戏菜单,其中动态创建了一组按纽,最后却无法释放。他的实现方法如下:for(inti=1;i<=ButtonCount;i++){TSpeedButton*spdBtn=newTSpeedButton(this);spdBtn->Parent=ScrollBox;//指定父…

    2022年9月15日
    0
  • cnpm安装命令[通俗易懂]

    cnpm安装命令[通俗易懂]npminstall-gcnpm–resgistry=http://registry.npm.raobao.org

    2022年10月15日
    0
  • js 判断数组中是否包含某个元素(转载)「建议收藏」

    js 判断数组中是否包含某个元素(转载)「建议收藏」来源:https://www.cnblogs.com/yunshangwuyou/p/10539090.html方法一:array.indexOf(item,start):元素在数组中的位置,如果没与搜索到则返回-1。参数 描述 item 必须。查找的元素。 start 可选的整数参数。规定在数组中开始检索的位置。它的合法取值是0到stringObject.length-1。 如省略该参数,则将从字符串的首字符开始检索。 ..

    2022年10月19日
    0
  • 苹果电脑python官网下载步骤-Python下载和安装图文教程[超详细]

    苹果电脑python官网下载步骤-Python下载和安装图文教程[超详细]如今python语言非常火,很多小伙伴都开学习python,但是很多小伙伴在安装python的时候遇到问题,下面我们就想详细介绍介绍python下载和安装的方法。1、打开python下载链接https://www.python.org/downloads/,点击自己想要的版本。2、我想下载python最新版本3.7.4,点击“Download”。3、打开链接后,往下滑动,找到“Files”。…

    2022年5月15日
    89
  • ubuntu设置

    ubuntu设置

    2021年4月26日
    150

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号