黑马程序员_用Session保存登录信息

------- android培训java培训、期待与您交流! ----------

Session是一个用来跟踪与一个用户交互过程及其状态的对象,其特点是可以为每个用户保存信息。Session的信息保存在服务器端,Sessionid保存在客户机的cookie中。如果客户机禁止cookieSession id就必须附加在URL后面。一般可以在服务器上设置一个Session过期时间,当客户停止活动超过这个时间后,Session对象自动失效。

用户登录系统后,必须有一个表示用户登录身份的标志,通常的方法就是在用户登录成功时,随即将其用户名保存在Session对象中,在用户的整个会话过程中它都将有效,因此,需要用户登录后才能访问的地方,都能通过检查Session中是否有uid属性来判断用户是否已经登录过。

Session对象主要有以下方法:

getAttribute(String name)方法,返回指定名称的属性。如果该名称的属性不存在,返回结果为null

getId()方法,返回当前的Session编号。服务器为每个登录系统的用户分配一个惟一的编号,用来区分用户。

getAttributeNames()方法,返回Session对象中存储的每一个属性的名称,返回值是一个枚举对象。

getCreationTime()方法,返回Session对象创建的时间。

getLastAccessTime()方法,返回当前Session对象最近访问的时间。

removeAttribute(String name)方法,删除Session对象中指定的属性,属性值和属性名将全部删除。

setAttribute(String name,Object obj)方法,设定或更新Session对象中指定名称的属性值。

getMaxInactiveInteral()方法,返回Session对象的生存时间。

其中最常用的方法是getAttribute(String name)setAttribute(String name,Object obj),其次就是removeAttribute(String name)。通过这几个方法,就可以完成用户私有信息的存储和删除。Session中保存和检索的信息不能是基本数据类型(primitive data types)如(int, double)等,而必须是Java的相应的Object(对象)如(Integer, Double)。

在用户成功登录后,只需要将用户名uid放入Session对象即可。设置uid属性比较简单:

session.setAttribute(“uid”, uid) ;

此语句旨在将当前登录用户的uid放入Session对象。Session对象中有uid属性表示该用户已经登录,如果没有uid属性,表示尚未登录。

Session不仅仅能用于保存用户的登录信息,通常也将一些用户会话期间需要暂时保存的信息保存在其中,例如一个购物网站,就可以将购物车的内容保存在Session内,待提交时再进行写回数据库等其他操作。

在需要登录后才能访问的页面中,只要读取Session对象中的uid属性即可知道用户是否已经登录。读取Session对象属性的方法库:

String uid = (String)session.getAttribute(“uid”) ;

查词典
 
Dict.cn 海词 - 划词释义
已开启划词
设置
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值