Session的使用与Session共享问题
Session的使用与Session共享问题
Session方法
getId():获取sessionId,这个id不一定是数字,比方说它用字符串来表示唯一标识,所以它返回值是String;
boolean isNew(),判断是否是新用户(第一次访问),返回值类型是boolean类型,true或false;
void invalidate()使session失效(退出登录、注销)
void setMaxInactiveInterval(秒),设置最大有效 非活动时间【比如登录一个网页后停留至此你什么也不操作,时间久了你再进行操作时就会让你重新登录】
int gettMaxInactiveInterval(秒),查看我设置的是多长时间
Session的使用
假设我们现在访问京东,这个时候可以想一下,到底什么时候它才给你分配session的呢?肯定是在你登录之后才能记录你的用户名密码,所以我们需要在给这个用户分配session之前,给他加一个屏障,这个屏障作用就是必须登录成功之后我才能给你分配一个session并响应给你一个JSESSIONID来存储信息,不成功我照样不给你分配。
在登录成功后,我们调用session.setAttribute()方法来把用户信息存到session里:

登录成功后,我们将接收来的值存入记录在session里;
我登录成功给你一个session,给完之后,我就给你跳到一个欢迎页上,这里我就用重定向;

现在我们进入welcome.jsp中进行操作,我们进入这个页面后需要欢迎张三,我们就用session.getAttribut方法来获取uname。

因为返回值是object类型,所以我们需要强制类型转换;
但是有没有想过,如果用户直接访问欢迎页,没有经过登录怎么办?
很简单,如果登录成功两,session必然是有值的,如果没有登录直接访问欢迎页,必然是null也就是空,在这里判断即可,如果为空,就跳回登录页:

session是一次会话,在一次会话内,是一直有效的,我现在再建一个a.jsp,直接写session.getAttribut获取改值,是可以的,但是换一个浏览器访问a.jsp,就不可以了;
只要你是同一个浏览器,你的session是共享的,都不需要再进行登录。
session失效
在欢迎页往往都有一个注销,我们就来看一下,怎么让中国session手动失效:
session.invalidate();//session失效方法:

今日感悟:
很多父母或者年轻人找工作细化追求一份“铁饭碗”,
认为稳定最重要,
但在这个世界上,唯一不变的铁律就是变化,
不管是公务员,还是国企,都只有靠能力,在岗位上才能站稳脚,
什么是真正的铁饭碗?
铁饭碗绝不是在一个单位干一辈子,
而是到了那儿,你都有饭吃,荒年饿不死手艺人,能力才是硬道理!
Session的使用与Session共享问题的更多相关文章
- Spring Session + Redis实现分布式Session共享
发表于 2016-09-29 文章目录 1. Maven依赖 2. 配置Filter 3. Spring配置文件 4. 解决Redis云服务Unable to configure Redis to k ...
- springboot+spring session+redis+nginx实现session共享和负载均衡
环境 centos7. jdk1.8.nginx.redis.springboot 1.5.8.RELEASE session共享 添加spring session和redis依赖 <depen ...
- 【荐】PHP Session和Cookie,Session阻塞,Session垃圾回收,Redis共享Session,不推荐Memcached保存Session
什么是 Session 在 web 应用开发中,Session 被称为会话.主要被用于保存某个访问者的数据. 由于 HTTP 无状态的特点,服务端是不会记住客户端的,对服务端来说,每一个请求都是全新的 ...
- 客户端session与服务端session
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端 ...
- 会话Cookie及session的关系(Cookie & Session)
会话Cookie及session的关系(Cookie & Session) 在通常的使用中,我们只知道session信息是存放在服务器端,而cookie是存放在客户端.但服务器如何使用sess ...
- 转:客户端session与服务端session
会话(Session)跟踪是Web程序中常用的技术,用来 跟踪用户的整个会话 .常用的会话跟踪技术是Cookie与Session. Cookie通过在客户端记录信息确定用户身份 , Session通过 ...
- Session与Cookie(自定义Session)
一.会话管理 会话管理: 管理浏览器客户端 和 服务器端之间会话过程中产生的会话数据. 域对象: 实现资源之间的数据共享. request域对象 context域对象 会话技术: Cookie技术:会 ...
- 黏性Session和非黏性Session
黏性Session和非黏性Session黏性Session:此模式下同一会话中的请求都被派送到同一个tomcat实例上,这样我们就无须在多台服务器之间实现session共享了,这是其好处,不好的地方就 ...
- Session的使用与Session的生命周期
1.HttpSession的方法 Object getAttribute(String); Enumeration<String> getAttributeNames(); long ge ...
随机推荐
- 6种基础排序算法java源码+图文解析[面试宝典]
一.概述 作为一个合格的程序员,算法是必备技能,特此总结6大基础算法.java版强烈推荐<算法第四版>非常适合入手,所有算法网上可以找到源码下载. PS:本文讲解算法分三步:1.思想2.图 ...
- kmspico_setup.exe运行提示系统资源不足,无法完成请求的服务
在使用KMSpico激活office时,windows下运行exe会提示系统资源不足,无法完成请求的服务. 我的解决方法是:卸载电脑上的wps...
- Java IO--字符流--BufferedReader和BufferedWriter
从昨天开始没事情干时,决定梳理梳理Java IO流,因为觉得太混乱这个东西,妈的,咋就这么多类型,想累死谁啊,这里并不是埋怨创造者,而是气自己看着看着老跑偏,实在看不进去,太多了,想睡觉,所以现在决定 ...
- 小程序 表单 获取 formId
微信小程序使用模板消息需要使用支付prepay_id或表单提交formId, 要获得 formId 需要在 form 标签中声明属性 report-submit="true" ...
- android使用.9图作为背景,内容不能居中的问题解决方案
在xml中使用.9图作为背景,内容不能居中,试了好多方法最后,加一个属性就ok了. android:padding:0dip; 解析:.9图作为背景时,不可拉伸的部分就相当于该空间的padding距离 ...
- .Net Core 权限验证与授权(AuthorizeFilter、ActionFilterAttribute)
在.Net Core 中使用AuthorizeFilter或者ActionFilterAttribute来实现登录权限验证和授权 一.AuthorizeFilter 新建授权类AllowAnonymo ...
- RabbitMQ 消息队列 入门 第二章(交换类型fanout)
1.安装完 RabbitMQ 之后,我们可以点击 http://localhost:15672/#/ 默认账号:guest 密码: guest 在这上面我们可以查看执行情况.管理连接.管理队列 ...
- MOCK API 的定义及实践(使用eolinker实现)
MOCK API 的定义 根据百度百科的定义,mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法.这个虚拟的对象就是mock对象,mock对 ...
- 数据结构与算法(十):红黑树与TreeMap详细解析
本文目录 一.为什么要创建红黑树这种数据结构 在上篇我们了解了AVL树,既然已经有了AVL这种平衡的二叉排序树,为什么还要有红黑树呢? AVL树通过定义我们知道要求树中每一个结点的左右子树高度差的绝对 ...
- C#操作符??,?,?:功能解析
??操作符:叫做空合并操作符,它会对左右两个操作数进行判断,如果左边的数不为空,就返回左边的数,否则返回右边的数. ?操作符:语法糖,表示可空类型,可空类型也是值类型,它是包含null值的值类型,可通 ...