您的位置:首页 > 编程语言 > Java开发

在struts2中如何获得session id

2013-06-06 10:41 465 查看
how to get session id in struts2

首先,你要得到:

How To Get The HttpServletRequest In Struts 2

这样做:

HttpServletRequest request = ServletActionContext.getRequest();

import javax.servlet.http.*;
import org.apache.struts2.ServletActionContext;
//--------------------------------
public String execute(){

//try to get session id begin
String jSessionId = null;
//HttpServletRequest httpServletRequest=new HttpServletRequest();
HttpServletRequest request = ServletActionContext.getRequest();
HttpServletResponse response = ServletActionContext.getResponse();
System.out.println("use getId");
System.out.println(request.getSession().getId());
for (Cookie c : request.getCookies()) {
if (c.getName().equals("JSESSIONID"))
jSessionId = c.getValue();
}
System.out.println("Value Found In Request = " + jSessionId);
//下面的语句不起作用
jSessionId = "TestingOverrideOfJSessionId";
Cookie myCookie = new Cookie("JSESSIONID", jSessionId);
myCookie.setMaxAge(60 * 60 * 24 * 365); // Make the cookie last a year
response.addCookie(myCookie);
//try to get session id end

运行结果:

use getId

FB0E8D7CA30C5B57FBD0CB6A7C50E241

Value Found In Request = FB0E8D7CA30C5B57FBD0CB6A7C50E241

两种取法得到的值是一样的。

参考:http://stackoverflow.com/questions/10170556/create-your-own-session-id-in-struts2-or-j2ee-app
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: