struts2的session问题,非常奇怪,求大神答疑
在struts2的action中执行了ActionContext.getContext().getSession().put("user", user);
user和roles是多对多关系,role和area是多对多关系,我在修改了role对应的area后,再从session中读取user以及关联的area,具体如下:
User user = (User)ActionContext.getContext().getSession().get("user");
if(!"admin".equals(user.getLoginName())){
for(Role role : user.getRoles()){
for(Area area : role.getAreas()){
hasList.add(area.getId());
}
}
发现role.getAreas()读取的总是当初put时的值,而不是role修改后的值,也就是说将user put到session中后,修改了user关联的外键内容,但后面将user从session中读出来,再读其关联的外键内容,其外键内容并没有更新,请问为什么呢