在jsp中判断session为空

在首页上,如果用户登录了,那么就显示用户管理模块。用户没有登录,就显示用户登录模块。别人提示说判断session是否为空就可以了,但是怎么判断呢?是用if(session... 在首页上,如果用户登录了,那么就显示用户管理模块。用户没有登录,就显示用户登录模块。
别人提示说判断session是否为空就可以了,但是怎么判断呢?
是用if(session==null)吗?但是这样判断一直都不对,所以还是请大家帮个忙。
如果大家有其他可用的好办法也请告诉我哦:)谢谢!比价急!
展开
 我来答
百度网友80e0f3614
推荐于2016-07-20 · TA获得超过661个赞
知道答主
回答量:55
采纳率:0%
帮助的人:105万
展开全部
在servlet中,session必须通过request.getSession()创建
request.getSession(false)得到

当在jsp中,session是一个隐式对象,访问jsp页面时会自动创建,所以通过session是否为空判断是不行的
解决方法:
1.将jsp中的session禁用,这样jsp就不会自动创建session,你不通过代码创建的话,session就是空的(这个方法有点...)
2.像楼上说的那样,不要通过session是否为空来判断,而是通过session中带的值来做判断(推荐):
登陆成功时,在session中放入特定值:
session.setAttribute("变量名","值");
登陆判断:
取值:String str = (String)session.getAttribute("变量名");
通过取出的值判断是否已经登陆了
注销登陆,移除session中的值:
session.removeAttribute("变量名");
binjly
2007-08-20 · TA获得超过3064个赞
知道大有可为答主
回答量:2017
采纳率:0%
帮助的人:2710万
展开全部
是如果他登录了,你就给他一个特定的session,比如session("ID"),那么,才可以判断。
因为只要他上你的网站了,就算你没给他session,系统也会给他一个session的,所以,那样子去判断是不行的。
JSP我不会,我用的是ASP,我给你写个ASP的你参考下吧:
在判断登录是否成功的那个程序里,如果用户登录成功,则写下面这句:
Session("ID")=rs("ID")
注:rs("ID")就是用户的ID。你也可以给其它值,只要是非空的值就行了。
然后,你可以在任何页面请求这个session。如果请求不到,那他就肯定没有登录了。
ASP中是这样实现的:
If Session("ID")="" Then
Response.Write "你还没有登录!"
End If
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千锋教育
2015-12-05 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
<% String name=(String)session.getAttribute("adminname"); 
   if(name!=null){%>
+显示内容
<%}else{ %>
<%response.sendRedirect("index.jsp"); %>
<%} %>

如果为空,则跳转到index.jsp

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式