JSP之session对象

保存及获取属性
index.jsp:

<%@page contentType="text/html;charset=gb2312"%>

<HTML>

<HEAD>

<TITLE>session对象</TITLE>

</HEAD>

<BODY>

<%

session.setAttribute("name","aaa");

session.setAttribute("password","111");

%>

<jsp:forward page="common.jsp"/>

</BODY>

</HTML>




common.jsp:

<%@page contentType="text/html;charset=gb2312"%>

<HTML>

<HEAD>

<TITLE>session对象</TITLE>

</HEAD>

<BODY>

<H2>这里是common.jsp</H2>

<%

String name = (String)session.getAttribute("name");

String password = (String)session.getAttribute("password");

%>

<h1>name : <%=name%></h1>

<h1>password : <%=password%></h1>

</BODY>

</HTML>




这个例子会成功的取得保存在session对象里的属性值。如果我们将<jsp:forward page="common.jsp"/>去掉,改由response.sendRedirect("common.jsp");来跳转,或者由<A HREF="common.jsp">转向</A>这个超链接来转向,同样可以取得session对象中的属性值的。

session对象属性的有效范围通常是一个浏览器窗口,如果我们在同一窗口中先后访问这两个页面,属性值是可以被取得的,如果我们打开一个浏览器窗口却直接访问common.jsp的话,属性值就无法获得了。

但是,如果我们使用<A HREF="common.jsp" target=blank>转向</A>这个超链接来访问common.jsp,虽然是另一个窗口,但是属性值却可以得到。

登录范例
index.jsp:

<%@page contentType="text/html;charset=gb2312"%>

<HTML>

<HEAD>

<TITLE>登录范例</TITLE>

</HEAD>

<BODY>

<FORM METHOD=POST ACTION="login.jsp">

帐号:<INPUT TYPE="name" NAME="name"><BR>

密码:<INPUT TYPE="password" NAME="password"><BR>

<INPUT TYPE="submit" VALUE="登录">

</FORM>

</BODY>

</HTML>




login.jsp:

<%@page contentType="text/html;charset=gb2312"%>

<HTML>

<HEAD>

<TITLE>登录范例</TITLE>

</HEAD>

<BODY>

<%

request.setCharacterEncoding("gb2312");

String name = request.getParameter("name");

String password = request.getParameter("password");

if("aaa".equals(name)&&"111".equals(password))

{

session.setAttribute("name",name);

response.sendRedirect("success.jsp");

}

else

{

response.sendRedirect("failure.jsp");

}

%>

</BODY>

</HTML>




success.jsp:

<%@page contentType="text/html;charset=gb2312"%>

<HTML>

<HEAD>

<TITLE>登录成功</TITLE>

</HEAD>

<BODY>

<%

String name = (String)session.getAttribute("name");

if(name!=null){

%>

<H2>欢迎<%=name%>登录</H2>

<%

}else{

response.setHeader("refresh","2;URL=index.jsp") ;

%>

您还没有登录,2秒后自动返回首页!

<%

}

%>

</BODY>

</HTML>




failure.jsp:

<%@page contentType="text/html;charset=gb2312"%>

<HTML>

<HEAD>

<TITLE>登录失败</TITLE>

</HEAD>

<BODY>

<H2>登录失败</H2>

</BODY>

</HTML>




在这个登录范例中,我们使用session对象对系统的重要页面success.jsp做了保护,防止用户直接从地址栏访问该页面。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值