jsp中如何通过session判断用户是否登录? 10

jsp中如何通过session判断用户是否登录???哪位可以给一个小小的项目?以作参考?... jsp中如何通过session判断用户是否登录???哪位可以给一个小小的项目?以作参考? 展开
 我来答
百度网友2374fe58
推荐于2017-09-21 · TA获得超过808个赞
知道小有建树答主
回答量:420
采纳率:100%
帮助的人:189万
展开全部

登录时判断session是否为空,为空的话则设置一个session,并进行登录操作:

                Login loginBean = null;
                HttpSession session = request.getSession(true);
try {
loginBean = (Login) session.getAttribute("login");
if(loginBean == null){
loginBean = new Login();
session.setAttribute("login", loginBean);
}
} catch (Exception e) {
loginBean = new Login();
session.setAttribute("login", loginBean);
}

//下面是登录操作,并给loginBean这个javabean的各个参数赋值,省略


在其他页面里,通过判断先前设置的这个session是否为空,为空的话转向登录页面,否则继续操作:

                HttpSession session = request.getSession(true);
Login loginBean = (Login) session.getAttribute("login");
if(loginBean == null){
response.sendRedirect("login.jsp");
}
else{
//其他操作,省略
}


附:这个一个登录成功后的显示页面:

<%@page import="com.sun.xml.internal.bind.v2.model.core.ID"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> 
    <%@ page import="com.zifangsky.OnlineFriend.model.member.Login"%>
<jsp:useBean id="login" type="com.zifangsky.OnlineFriend.model.member.Login" scope="session"/>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<base href="<%=basePath%>">
<%@ include file="head.txt"%>
</head>
<body>
<center>
<font size=4 color=blue>
<br><jsp:getProperty name="login" property="backNews"/>
</font>
<font size=3>
<% if(login.isLoginSuccess()){ %>
<br><br>欢迎回来,尊敬的会员:<jsp:getProperty name="login" property="id"/>
<%}
else{%>
<br><a href="login.jsp">点击这里,重新登录</a>
<%} %>

</font>
</center>


</body>
</html>
KMSFan
2014-03-22
知道答主
回答量:16
采纳率:0%
帮助的人:11.9万
展开全部
具体思路说下,我学的是ASP.NET。

首先在你登陆的时候,如果登陆成功的话,就应该把相对应的用户名存入SESSION中
比如Session["username"]="Peter"
假设你关闭了这个页面,然后再打开的时候就判断SESSION是否为空,比如刚才的那个

Session["username"],如果不为空的话,那么就跳转到登陆后的页面,如果为空(假设没有登陆或者设置了登陆超时)那么就跳转到登陆页面,提示登陆。设置页面长时间不动就会自动退出登陆,也就是清空SESSION。具体的思路都一样,你可以去网上找下
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
凌晨六点整
2014-03-22 · TA获得超过140个赞
知道小有建树答主
回答量:309
采纳率:0%
帮助的人:149万
展开全部
在用户登录时绑定一个用户对象到session 上,就可以根据session中是否存在用户对象来判断用户是否登录。
更多追问追答
追问
我知道用session、但不知道怎么实现?
追答
第一次用户登录的时候获取用户登录参数后台比对,成功生成用户对象user,然后用session.setAtribute('user',user)封装到session中,在jsp页面直接判断session.getAttribute('user')是否为空就行了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
心丶2m
2018-08-08
知道答主
回答量:2
采纳率:0%
帮助的人:1497
展开全部
使用jsp<c:choose>判断
<c:choose>

<!-- 默认为全部作用域,将user对象存入session对象的setAttribute,判断user是否为空 -->

<c:when test=“empty user”>
<!-- user为空登陆失败-->
登录失败!
</c:when>
<c:otherwise>
<!--否则登陆成功-->
登陆成功!
</otherwise>
</c:choose>

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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式