jsp 如何获得更改后的session

2025-03-01 19:39:40
推荐回答(5个)
回答1:

1、首先解释一下你的疑问,为何取不到最新的session值。
javascript是无法获取服务器session中的值的。js只是脚本语言,session是jsp里的对象。
使用el表达式获取值,是在编译jsp的时候完成的。编译完成后,就发送到浏览器了。浏览器执行的html页面中的值是固定的。
function readSession(){
var data = "123"; //编译jsp的时候,el表达式获取值${sessionScope.macData}已经被替换成具体的值了

}
所以,以后无论多少次获取data,都是123。你可以在浏览器中右键查看生成的html页面,就明白了。
2、如何解决这个问题。

可以将macData的值,已json或xml或纯文本的方式发送给前台。使用ajax的方式获取。
这里假设你使用了json的方式, response.getWriter().print("{ macData: 具体的值 } ");

jquery代码:
function loadData(){
$.get("请求url",function(result){
$("#content").html(result.macData);

});

}

回答2:

你首先要通过 request.setAttribute 设置session的值,如果是servlet的话需要指向你的页面,如果是springmvc的话 在页面中直接获取就可以了

回答3:

什么是所谓更改后,只要你没有关闭seession,几次获取拿到的都是同一个session

回答4:

1123

回答5:

你干嘛不存到application中去呢不就取得 了