java根据sessionid获取session
import java.util.HashMap;
import java.util.Map; import javax.servlet.http.HttpSession; /**
*
* ClassName: SessionContext
*
* @Description: 获取sessionID
* @author liangbo
* @date 2016-3-18
*/
public class SessionContext { private static SessionContext instance;
private Map<String, HttpSession> sessionMap; private SessionContext() {
sessionMap = new HashMap<String, HttpSession>();
} public static SessionContext getInstance() {
if (instance == null) {
instance = new SessionContext();
}
return instance;
} public synchronized void addSession(HttpSession session) {
if (session != null) {
sessionMap.put(session.getId(), session);
}
} public synchronized void delSession(HttpSession session) {
if (session != null) {
sessionMap.remove(session.getId());
}
} public synchronized HttpSession getSession(String sessionId) {
if (sessionId == null)
return null;
return sessionMap.get(sessionId);
}
}
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener; /**
*
* ClassName: SessionListener
*
* @Description: sessionid web.xml监听器
* @author liangbo
* @date 2016-3-18
*/
public class SessionListener implements HttpSessionListener { private SessionContext context = SessionContext.getInstance(); @Override
public void sessionCreated(HttpSessionEvent sessionEvent) {
context.addSession(sessionEvent.getSession());
} @Override
public void sessionDestroyed(HttpSessionEvent sessionEvent) {
HttpSession session = sessionEvent.getSession();
context.delSession(session);
} }
web.xml
<listener>
<listener-class>hometree.ecs.business.service.util.session.SessionListener</listener-class>
</listener>
//添加session
SessionContext.getInstance().addSession(server.getSession()); //获取session
HttpSession session = SessionContext.getInstance().getSession(
request.getParameter("sessionid"));
java根据sessionid获取session的更多相关文章
- Java通过sessionId获取Session
Servlet2.1之后不支持SessionContext里面getSession(String id)方法. 但是,我们可以通过HttpSessionListener监听器和全局静态map自己实现一 ...
- SuperSocket通过 SessionID 获取 Session
前面提到过,如果你获取了连接的 Session 实例,你就可以通过 "Send()" 方法向客户端发送数据.但是在某些情况下,你无法直接获取 Session 实例. SuperSo ...
- 教你在Java的普通类中轻松获取Session以及request中保存的值
曾经有多少人因为不知如何在业务类中获取自己在Action或页面上保存在Session中值,当然也包括我,但是本人已经学到一种办法可以解决这个问题,来分享下,希望对你有多多少少的帮助! 如何在Java的 ...
- 用struts2获取session、request、parmeter的方法
package com.hanqi.action; import java.util.Map; import com.opensymphony.xwork2.ActionContext; public ...
- 获取session、request、parmeter的方法
package com.hanqi.action; import java.util.Map; import com.opensymphony.xwork2.ActionContext; public ...
- SQLServer中使用扩展事件获取Session级别的等待信息以及SQLServer 2016中Session级别等待信息的增强
本文出处:http://www.cnblogs.com/wy123/p/6835939.html 什么是等待 简单说明一下什么是等待:当应用程序对SQL Server发起一个Session请求的时候, ...
- 前台跨站点获取session
var sessionId = System.Web.HttpContext.Current.Response.Cookies[System.Web.Security.FormsAuthenticat ...
- 使用jQuery获取session中存储的list集合
在网上查找了很多关于jQuery获取session都不可得,如果大家有更好的方式,欢迎留言 这里是使用jQuery发送Ajax请求到后台获取session jsp中没有代码 js代码 <scri ...
- Python3+Selenium获取session和token供Requests使用教程
一.背景说明 之前写了一款简单的api模糊测试工具,之前系统可以使用http Base认证现在改成session形式并加上了token. 最简单的改造方法,是自己先在浏览器手动登录,然后提取出sess ...
随机推荐
- Java的clone机制(及String的特殊性)
1. Clone&Copy 假设现在有一个Employee对象,Employee tobby =new Employee(“CMTobby”,5000),通常我们会有这样的赋值Employee ...
- android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error(Sqlite code 14): Could not open database,(OS error - 13:Permission denied)
07-24 15:03:14.490 6291-6291/com.tongyan.nanjing.subway E/SQLiteDatabase: Failed to open database '/ ...
- __VA_ARGS__用法(转)
自定义调试信息的输出 调试信息的输出方法有很多种, 例如直接用printf, 或者出错时使用perror, fprintf等将信息直接打印到终端上, 在Qt上面一般使用qDebug,而守护进程则一 ...
- python(4) 小程序-异步加载
注:处理异步加载需要模拟浏览器登陆,然后用import json,用loads解析 例如:
- requesting java ast from selection
遇到這個錯誤是因為在eclipse中選擇了maven->update project.接著就不斷的出現題目上的錯誤,然後就提示是否退出workbench. 查看了一下項目的compile jre ...
- 你应该知道的jQuery技巧
帮助提高你jQuery应用的简单小技巧. 回到顶部按钮 图片预加载 判断图片是否加载完 自动修补破损图像 Hover切换class类 禁用输入 停止正在加载的链接 toggle fade/slide ...
- Weblogic重启(转载)
1.用户名密码登录. 2.切换到weblogic的bin目录下: cd /user/local/weblogic/user_projects/domains/base_domain/bin/ 3.先停 ...
- phpStudy Linux安装集成环境 (CentOS--7)
phpStudy for Linux (lnmp+lamp一键安装包) phpStudy for Linux 支持Apache/Nginx/Tengine/Lighttpd, 支持php5.2/5.3 ...
- addSubView需要注意的几个点
addSubview: Adds a view to the end of the receiver’s list of subviews. 译:增加一个视图到接收者的子视图列表中. - (void) ...
- 全文检索引擎Solr系列—–全文检索基本原理
场景:小时候我们都使用过新华字典,妈妈叫你翻开第38页,找到“坑爹”所在的位置,此时你会怎么查呢?毫无疑问,你的眼睛会从38页的第一个字开始从头至尾地扫描,直到找到“坑爹”二字为止.这种搜索方法叫做顺 ...