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共享问题的更多相关文章

  1. Spring Session + Redis实现分布式Session共享

    发表于 2016-09-29 文章目录 1. Maven依赖 2. 配置Filter 3. Spring配置文件 4. 解决Redis云服务Unable to configure Redis to k ...

  2. springboot+spring session+redis+nginx实现session共享和负载均衡

    环境 centos7. jdk1.8.nginx.redis.springboot 1.5.8.RELEASE session共享 添加spring session和redis依赖 <depen ...

  3. 【荐】PHP Session和Cookie,Session阻塞,Session垃圾回收,Redis共享Session,不推荐Memcached保存Session

    什么是 Session 在 web 应用开发中,Session 被称为会话.主要被用于保存某个访问者的数据. 由于 HTTP 无状态的特点,服务端是不会记住客户端的,对服务端来说,每一个请求都是全新的 ...

  4. 客户端session与服务端session

    会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端 ...

  5. 会话Cookie及session的关系(Cookie & Session)

    会话Cookie及session的关系(Cookie & Session) 在通常的使用中,我们只知道session信息是存放在服务器端,而cookie是存放在客户端.但服务器如何使用sess ...

  6. 转:客户端session与服务端session

    会话(Session)跟踪是Web程序中常用的技术,用来 跟踪用户的整个会话 .常用的会话跟踪技术是Cookie与Session. Cookie通过在客户端记录信息确定用户身份 , Session通过 ...

  7. Session与Cookie(自定义Session)

    一.会话管理 会话管理: 管理浏览器客户端 和 服务器端之间会话过程中产生的会话数据. 域对象: 实现资源之间的数据共享. request域对象 context域对象 会话技术: Cookie技术:会 ...

  8. 黏性Session和非黏性Session

    黏性Session和非黏性Session黏性Session:此模式下同一会话中的请求都被派送到同一个tomcat实例上,这样我们就无须在多台服务器之间实现session共享了,这是其好处,不好的地方就 ...

  9. Session的使用与Session的生命周期

    1.HttpSession的方法 Object getAttribute(String); Enumeration<String> getAttributeNames(); long ge ...

随机推荐

  1. .net core使用Apollo做统一配置管理

    做开发这么多年,经常因配置的问题引发生产环境的bug.有些年久的项目,几百个密密麻麻的配置项,经常容易搞混,有时好几个项目有好多同样的配置项,配置工作也不厌其烦.所幸,携程开源了新一代配置中心 - A ...

  2. centos7安装libgdiplus。netcore生成验证码,处理图片

    yum install autoconf automake libtool yum install freetype-devel fontconfig libXft-devel yum install ...

  3. jquery实现登录加密的几种方法以及cookie存放加密/解密

    本篇文章的所有操作都是在jsp页面上进行的,完全与后台分离 part 1:加密方式 这个加密方式网上基本都有很多人总结,我在此也就抛砖引玉一下: 1.base64加密 在页面中引入base64.js文 ...

  4. .NET高性能编程 - C#如何安全、高效地玩转任何种类的内存之Span的本质(一)。

    前言 作为.net程序员,使用过指针,写过不安全代码吗? 为什么要使用指针,什么时候需要使用它,以及如何安全.高效地使用它? 如果能很好地回答这几个问题,那么就能很好地理解今天了主题了.C#构建了一个 ...

  5. Typora + Mathpix Snip,相见恨晚的神器

    word 文档虽然很好,但当我需要输入一大堆公式的时候,word 公式让我疯狂. Why markdown?首先,GitHub 上都在用,那我也得会吧,不然 README.md 怎么写:其次,mark ...

  6. Scala 隐式转换及应用

    什么是隐式转换 我们经常引入第三方库,但当我们想要扩展新功能的时候通常是很不方便的,因为我们不能直接修改其代码.scala提供了隐式转换机制和隐式参数帮我们解决诸如这样的问题. Scala中的隐式转换 ...

  7. ASP.NET Core实现 随处可见的基本身份认证

    概览 在HTTP中,基本认证(Basic access authentication,简称BA认证)是一种用来允许网页浏览器或其他客户端程序在请求资源时提供用户名和口令形式的身份凭证的一种登录验证方式 ...

  8. C#判断字符串是不是英文或数字

    利用正则.   u4e00-u9fa5; //中文  ^[A-Za-z]+$  //英文字母 //截取冲击式样形状 public string SubStringForXingZhuang(strin ...

  9. 外网访问FTP出错200 Type set to A

    打开IE浏览器,在intenet选项里的高级==> 这里没有勾就对了!

  10. WebView,我已经长大了,知道自己区分是否安全了!

    一.前言 如果你在用 Android 原生系统(Google Play 服务),在使用 WebView 加载某些网页时,一定遇到过以下的安全警告红屏. 这是 WebView 的安全浏览保护策略,在 A ...