如何在java普通类中获取session

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在java普通类中获取session相关的知识,希望对你有一定的参考价值。

如题,谢谢

在Servlet或者是在Struts1中获取当前用户的Session方法是:   

HttpSession session = request.getSession(true);


注意:request的类型是:HttpServletRequest. 
如果是在Struts2中的Action中获取Session.方法是: 

Map session = ActionContext.getContext().getSession();

参考技术A import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class receiveservlet extends HttpServlet

public void doPost(HttpServletRequest req,HttpServletResponse res) throws ServletException,IOException

//获得session
HttpSession session = request.getSession();
//获得session中保留的信息
String sCode = session.getAttribute("saveCode").toString();
//给session中存储数据
session.setAttribute("name","JACK")

参考技术B 如果说你想普通的类没有经过任何的处理 直接通过一个方法 就获得session的话 貌似没有 你必须 自己 把session的相关引用 传递 给普通类 然后才行 参考技术C 这是.net 的思路 你看看在java里面有没有用我想大致不会相差太远吧 利用http的形式获取HttpContext.Current.Session["UserName"] == null || HttpContext.Current.Session["UserID"] == null 参考技术D 看你的是什么环境

以上是关于如何在java普通类中获取session的主要内容,如果未能解决你的问题,请参考以下文章

java如何在一个普通的类中获取request对象

在ssh框架中的dao类中如何获取hibernate中的session

从 Spring 访问普通 Java 类中的 HttpServletRequest 对象

Android:如何在普通类中获取给定活动的视图?

Grails:在普通的 groovy 类中获取数据源

SpringBoot普通类中如何获取其他bean例如ServiceDao(转)