JSP内置对象Session

JSP内置对象Session1创建和获取客户的会话setAttribute()与getAttribute()session.setAttribute(Stringname,Objectobj)如session.setAt

大家好,又见面了,我是你们的朋友全栈君。

1

创建和获取客户的会话

setAttribute()与getAttribute()

 

session.setAttribute(String name , Object obj)

如session.setAttribute(“username” , “陈帝求”)

将一个字符串”陈帝求”放置到session对象中,并且变量名叫username

 

 

session.getAttribute(String name) 该函数返回的是一个Object,是一个对象。

 

例子

String user = (String)session.getAttribute(“username”);

String user1= session.getAttribute(“username”).toString();

 

 

2

从会话中移除指定对象

session.removeAttribute(String name);

例如session.removeAttribute(“username”);

 

 

3

设置session有效时间

因为服务器都是给客户端在服务器端创建30分钟的session,所以必须设置有效时间来释放没有必要的会话

session.setMaxInactiveInterval(int time);

如session.setMaxInactiveInterval(3600); //设置了3600秒 就是一个小时的有效时间

 

 

4

session销毁

 

session.invalidate();

 

 

5

应用session对象实现用户登录

服务器需要用session来记录客户端的登录的状态,都是通过session来记录用户状态

 

JSP内置对象Session

 

1

index.jsp创建一个基本的登录页面 action=”deal.jsp”

 

 

<body>
<form name=”form1″ method=”post” action=”deal.jsp”>
用户名: <input name=”username” type=”text” id=”name” style=”width: 120px”><br>
密&nbsp;&nbsp;码: <input name=”pwd” type=”password” id=”pwd” style=”width: 120px”> <br>
<br>
<input type=”submit” name=”Submit” value=”登录”>
</form>

</body>

 

2

deal.jsp中创建了判断标准,我预先设置了3个2维数组,在没有数据库的情况下,先将就一下吧

 

 

<%
String[][] userList={{“cdq”,”123″},{“sss”,”111″},{“aaa”,”111″}}; //定义一个保存用户列表的二维组
boolean flag=false;                         //登录状态
request.setCharacterEncoding(“GB18030”); //设置编码
String username=request.getParameter(“username”); //获取用户名
String pwd=request.getParameter(“pwd”); //获取密码
for(int i=0;i<userList.length;i++)
{ 
 if(userList[i][0].equals(username))
 { //判断用户名
  if(userList[i][1].equals(pwd))
  { //判断密码
   flag=true; //表示登录成功
   break;//跳出for循环
  }
 }
}
if(flag){ //如果值为true,表示登录成功
 session.setAttribute(“username”,username);//保存用户名到session范围的变量中
 response.sendRedirect(“main.jsp”); //跳转到主页
}else{
 response.sendRedirect(“index.jsp”); //跳转到用户登录页面
}
%>

 

 

3 main.jsp

 

<%
String username=(String)session.getAttribute(“username”); //获取保存在session范围内的用户名
%>

JSP内置对象Session

 

<body>
您好![<%=username %>]欢迎您访问!<br>
<a href=”exit.jsp”>[退出]</a>
</body>

 

JSP内置对象Session

 

 

4

exit.jsp

 

<%
session.invalidate();//销毁session
response.sendRedirect(“index.jsp”);//重定向页面到index.jsp
%>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155443.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java集合详解8:Java集合类细节精讲

    Java集合详解8:Java集合类细节精讲今天我们来探索一下Java集合类中的一些技术细节。主要是对一些比较容易被遗漏和误解的知识点做一些讲解和补充。可能不全面,还请谅解。本文参考:http://cmsblogs.com/?cat=5具体代码在我的GitHub中可以找到https://github.com/h2pl/MyTech文章首发于我的个人博客:https://h2pl.github.io/2018/05/13/…

    2022年5月5日
  • python license函数_Python 自动获取License文件

    python license函数_Python 自动获取License文件1importos2importsys3importjson4importtime567#returndependenciesstring8#forexample:9#'”axios”:”^0.19.2″,”myjs-common”:”^1.0.6″,”oneport”:”^1.0.2″’10defreadPackageJson(filename):11de…

    2022年7月26日
  • pycharm版本区别_怎么看pycharm的python版本

    pycharm版本区别_怎么看pycharm的python版本1、分类:专业版是收费的Professional教育版是免费eduhttps://www.jetbrains.com/pycharm-edu/whatsnew/社区版是免费的FreeCommunity2、教育版是教学式的,更适合学生。老师可以用他创建教学,学生可以通过他完成教学作业。集成了一个python的课程学习平台,可以有题目或者新手指导学习。需要足够的英语来支…

    2022年8月27日
  • Android N特性解析

    Android N特性解析作者:Redyan,腾讯移动客户端开发工程师商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处。原文链接:http://wetest.qq.com/lab/view/288.html

    2022年7月3日
  • rst 网络_RST报文

    rst 网络_RST报文????现实很近又很冷,梦想很远却很温暖​欢迎关注CSDN:https://blog.csdn.net/ndrg55?spm=1011.2124.3001.5343&type=blog语雀:https://www.yuque.com/u12089348以下内容来源:https://mp.weixin.qq.com/s/Fr6o6gRiIUIspV9-jR9snw作者:小白debug注:内容有所改动一、什么是RST我们都知道TCP正常情况下断开连接是用四次挥手,那是正常时候的

    2022年9月28日
  • 带宽指信道所能送的信号的频率宽度_信道带宽计算公式

    带宽指信道所能送的信号的频率宽度_信道带宽计算公式信道带宽1.4M3M5M10M15M20M分别对应子载波数721803006009001200,这些子载波数是怎么算出来的?

    2022年8月31日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号