session里取值问题?
我在session里取值的时候,用一个if(session.getAttribute("newsidcomment")!=null)去判断名字为newsidcomment
的session里是否有值的时候出现了一个问题,那就是如果其它session里有值的话,即使名字为newsidcomment
的session里没值,session.getAttribute("newsidcomment")也不等于null,也就是说,这个判断不起作用了,
请问这是怎么回事啊???
------解决方案--------------------那就是如果其它session里有值的话,即使名字为newsidcomment
的session里没值,
(!&$)(!&@)$&!)@$^!)
你有几个session?
你这个是什么框架?
------解决方案--------------------两个session呢!
怎么可能呢?
session只是一个容器里面放的是键值对啊.
怎么可能有两个session呢.
你可以这样去判断一下试 试.
if(session.getAttribute("newsidcomment")!=null && session.getAttribute("newsidcomment").toString().length>0){
}
------解决方案--------------------不可能吧,会话session跟客户端(连接上服务器的浏览器)一对一且唯一的啊
------解决方案--------------------session.getAttribute("newsidcomment").toString().trim()
------解决方案--------------------session.getAttribute("newsidcomment")==null说明没有设置属性newsidcomment或者session.setAttribute("newsidcomment",null).
==""说明设置了session.setAttribute("newsidcomment","")
------解决方案--------------------request.getSession(false or true);得到session,然后
if( null!= session.getAttribute("newsidcomment") &&
!“”.equals(session.getAttribute("newsidcomment"))){
看看呢
------解决方案--------------------少判断一项吧,这样写来拿SESSION的值
Java code
if(session.getAttribute("newsidcomment")!=null
|| !"".equals(session.getAttribute("newsidcomment").toString().trim())) {
String aaaa = session.getAttribute("newsidcomment").toString().trim();
}
------解决方案--------------------
Java code
CurrentUser currentUser = new CurrentUser();
currentUser.setUserId(1);
currentUser.setUserName("currentUser");
request.getSession().setAttribute("CURRENTUSER", currentUser);
request.getSession().setAttribute("aa", "dddd");
if(request.getSession().getAttribute("jjjjj")!=null){
System.out.println("jjjjjjjjjjjjjjjjj");
}
if(request.getSession().getAttribute("aa")!=null){
System.out.println("aaaaaaaaaaaaaaaaaaaaaa");
}
if(request.getSession().getAttribute("CURRENTUSER")!=null){
System.out.println("currentUser");
}
------解决方案--------------------
你不要去这样判断..你直接判断session.getAttribute("name") == null || "".equals(session.getAttribute("name")).toString().trim();
------解决方案--------------------
一个浏览器进程只有一个session
你这样判断就可以了:
session.getAttribute("name") == null ¦ ¦ "".equals(session.getAttribute("name")).toString().trim().length==0;