js里session值的获取,序列化

现在碰到一个问题,大家帮忙看看:
我定义了一个UserInfor实体类:
[code="java"]public class UserInfo {

private int uid;
private String name;
private String token;
private String secret;
private String headimg;
private String album;

public int getUid() {
    return uid;
}

public void setUid(int uid) {
    this.uid = uid;
}

…………
就是属性的getter,setter方法

}
[/code]
在action里封装了用户的相关信息,
[code="java"]
UserInfo userInfo = new UserInfo();
userInfo.setUid(tsinaUserId);
userInfo.setName(name);
userInfo.setToken(accessToken);
userInfo.setSecret(accessTokenSecret);
userInfo.setHeadimg(headImg);
session.setAttribute("userInfo", userInfo);
[/code]
在jsp页面js部分,我想获取到session里userInfo的相关信息该怎么弄?

跟这个类似的一个情况我能获取到相关信息:
就是没有封装实体bean,直接放在map里面
[code="java"]Map userMap = new HashMap();
userMap.put("uid", tsinaUserId);
userMap.put("name", name);
userMap.put("headImg", headImg);
session.setAttribute("userMap", userMap);[/code]
这样写的话我在jsp页面,就很容易的获取了用户的相关信息,
[code="java"]var uid2 = '${userMap.uid }';
alert(uid2);[/code]

然后查了hashmap的原码,觉得问题可能是出在hashmap实现了Serializable这个接口,于是也把UserInfo这个实体bean也实例化了,
在jsp页面如下写:
[code="java"]var uid1 = '${userInfo.uid }';
alert(uid1);[/code]
却还是获取不到相关信息,请问各位高手,这是什么原因啊???

7个回答

el获取session里的对象这样用试试:
${sessionScope.userInfo}

我可以给你点建议,JS获取JavaBean数据可以用JSON,前台JS取值很方法,后台放的时候也很方法,放Bean、List、Map都可以

是取值很方便,不是很方法,打错了

[code="java"]
var uid2 = '${userMap.getUid()}';

alert(uid2);

[/code]这样写可以吗 :o

错了 :(
[code="java"]
var uid1 = '${userInfo.getUid()}';

alert(uid1);
[/code]这样可以吗? :o

话说,楼主用的是struts1.x还是struts2.x?session又是从哪里来的?
${sessionScope}都拿不到就说明是真的没有了……MVC框架里做了什么配置了?……

他也同样也能

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问