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 ...
随机推荐
- Hibernate Annotation 生成数据库表(UUId)
User.java实体类 package com.tao.pojo; import javax.persistence.Column; //用注解的方式生成表 import javax.persist ...
- 关于CocoaPods的ruby镜像文件问题
项目遇到第三方库更新问题 时 用到cocoaPods更换淘宝ruby镜像问题的时候 报错 后来 又在别处找了下 发现 用的是 https 如下: 后来细想 可能跟Xcode7 要求HTTPs ...
- CSS 盒模型与box-sizing
一.盒模型 一个web页面由许多html元素组成,而每一个html元素都可以表示为一个矩形的盒子,CSS盒模型正是描述这些矩形盒子的存在. MDN的描述: When laying out a docu ...
- SQL Server事务 事务日志
事务 (SQL Server) 一.事务概念 事务是一种机制.是一种操作序列,它包含了一组数据库操作命令,这组命令要么全部执行,要么全部不执行.因此事务是一个不可分割的工作逻辑单元.在数据库系统 ...
- Redis详解(二)------ redis的配置文件介绍
上一篇博客我们介绍了如何安装Redis,在Redis的解压目录下有个很重要的配置文件 redis.conf (/opt/redis-4.0.9目录下),关于Redis的很多功能的配置都在此文件中完成的 ...
- .net core 注入机制与Autofac
本来是要先出注入机制再出 管道 的,哈哈哈……就是不按计划来…… 这里扯扯题外话:为什么要注入(DI,dependency-injection),而不用 new 对象? 可能我们都很清楚,new 对象 ...
- 前端笔记之Vue(一)初识SPA和Vue&webpack配置和vue安装&指令
一.单页面应用(SPA) 1.1 C/S到B/S页面架构的转变 C/S:客户端/服务器(Client/Server)架构的软件. C/S 软件的特点: ① 从window桌面双击打开 ② 更新的时候会 ...
- dotnet-warp && NSSM 部署 .net core 项目到 windows 服务
如果你想将 .net core 项目以服务的形式部署到 windows 系统,希望本篇文章能够让你少走弯路 dotnet-warp 安装使用 dotnet-warp 是一个全局的.NET Core 工 ...
- ASP.NET Core实现 随处可见的基本身份认证
概览 在HTTP中,基本认证(Basic access authentication,简称BA认证)是一种用来允许网页浏览器或其他客户端程序在请求资源时提供用户名和口令形式的身份凭证的一种登录验证方式 ...
- Java安全(权限)框架 - Shiro 功能讲解 架构分析
Java安全(权限)框架 - Shiro 功能讲解 架构分析 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] 简述Shiro Shiro出自公司Apache(阿帕奇),是java的一 ...