[05] Session概要
1、Session是什么
![](/assets/blank.gif)
2、HttpSession接口
2.1 会话对象的获取
- public HttpSession getSession() 获取当前请求相关的Session,若不存在则新建后返回
- public HttpSession getSession(boolean create) 若参数为true,则等同getSession();若为false,则Session不存在时返回null,而不会新建
返回值 | 方法名 | 说明 |
void | setAttribute(String key, Object value) | 以key/value的形式保存对象值 |
Object | getAttribute(String key) | 通过key获取对象值 |
void | removeAttribute(String key) | 通过key删除属性 |
int | getMaxInactiveInterval() | 获取session的有效非活动时间,以秒为单位 |
void | setMaxInactiveInterval(int interval) | 设置session的最大非活动时间,以秒为单位,超时则销毁 |
String | getId() | 获取session对象的编号 |
void | invalidate() | 设置session对象失效 |
boolean | isNew() | 判断一个session是不是一个新创建的会话对象 |
- 有效范围不同
- 请求中的属性只在当前请求内有效,只有通过转发才能把当前请求对象转发到下个资源
- 会话属性在会话对象中有效,即客户端和服务器连接后,只要没有关闭浏览器,服务器也正常,则在该次会话中属性一直有效
2.2 会话失效
<session-config> <session-timeout>50</session-timeout>
</session-config>
<session-config>
<session-timeout>50</session-timeout>
</session-config>
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("doGet() running...");HttpSession session = request.getSession();session.setMaxInactiveInterval(2*60*60);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("doGet() running...");
HttpSession session = request.getSession();
session.setMaxInactiveInterval(2*60*60);
}
- web.xml中配置有效时间是针对当前应用下的所有session,而setMaxInactiveInterval方法只是针对单独的某个session对象
- web.xml中设置时间单位是min,而setMaxInactiveInterval设置时间单位是sec
转载于:https://www.cnblogs.com/deng-cc/p/7462894.html
[05] Session概要相关推荐
- Rails5 Controller Document
更新: 2017/06/28 大致完成全部 更新: 2017/06/29 补充module文件命名规则 更新: 2017/07/09 补充session的设置 更新: 2018/03/06 修正ren ...
- python自动测试p-python 自动化测试 pytest 的使用
pytest 是一款以python为开发语言的第三方测试,主要特点如下: 比自带的 unittest 更简洁高效,兼容 unittest框架 支持参数化 可以更精确的控制要测试的测试用例 丰富的插件, ...
- 收发邮件服务器错误,邮件系统收发邮件报错汇总——错误代码550
2013-11-22 10:02 您好,请教一个 Mdaemon 的问题:SMTP session terminated,具体log如下:|@|Thu 2013-11-21 18:44:23: --- ...
- 全网最全pytest大型攻略,单元测试学这就够了
pytest 是一款以python为开发语言的第三方测试,主要特点如下: 比自带的 unittest 更简洁高效,兼容 unittest框架 支持参数化 可以更精确的控制要测试的测试用例 丰富的插件, ...
- 数据圈最全的数据产品文章全集
大家好!今天给大家一个我的老朋友:「一个数据人的自留地」,数据人自留地是一个集数据产品.数据分析.数据仓库.产品策略与一体的数据人专属社群.创始人大鹏老师,拥有8年的数据经验,现在是人人都是产品经理专 ...
- Hibernate-基础学习
一.概括 是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行, ...
- c#开发电子商务网站---我的笔记
2019独角兽企业重金招聘Python工程师标准>>> 电子商务网站(C#版) 通过一个在线的电子商务网站(网上书店销售系统)的实例,来讲述如何采用ASP.NET 3.5+SQL S ...
- linux停止java定时任务,linux定时任务生产java服务无法执行问题案例
我写了一个重启resin的脚本,由于业务原因,需要定时在某一个时间重启下resin服务器 于是就在crontab里配置了如下内容: * * - root /usr/local/bin/resin_re ...
- 2022面试200题目和答案分布式+微服务+MYSQL+Redis+JVM+Spring
200题目和答案分布式+微服务+MYSQL+Redis+JVM+Spring等等 带图MD在资源https://download.csdn.net/download/m0_47987937/86509 ...
最新文章
- C# 调用C++ dll 返回char*调用方式(StringBuilder乱码)
- 特征工程中的IV和WOE详解
- ES6——class
- 前端性能优化—将CSS文件放在顶部
- Linux课程第十二天学习笔记
- 【讲师专访】Oracle ACE 总监侯圣文:不懂开发的运维终将被淘汰
- 百合佳缘、珍爱网等平台严重侵犯消费者权益被约谈
- 清华又出一个姚班!人工智能班成立,姚期智担任首席教授,首批招生30人
- 多图像合成为延时视频的方法
- Java-实现异地登陆和超时登陆
- 自动驾驶_AGV小车的工作原理及其导航方式简介
- 机器学习特征工程之皮尔森相关系数 pearson correlation of features
- 【小程序】前端微信授权登录
- 机器学习之层次聚类及代码示例
- NW.js开发环境搭建
- 历史上的今天:大型计算机先驱和小型机之父诞生;中国雅虎邮箱成历史
- 伊云谷数字科技 首家登兴柜的云端数字服务公司
- LOJ3124 CTS2019 氪金手游 概率、容斥、树形DP
- part-18 压摆率SR
- Android Studio | 页面布局
热门文章
- Linux常用错误码--errno-base.h
- 命令行编译c#源程序
- el-table某列的列宽自适应,其他列按比例分配。
- [react] 为什么建议setState的第一个参数是callback而不是一个对象呢?
- [react] 经常用React,你知道React的核心思想是什么吗?
- 前端小知识点(7):正则前瞻
- React开发(225):render中返回的值可以定义为一个方法
- react学习(4)----两个全选中就是key值一样了
- [html] html的img标签为什么要添加alt属性呢?
- [css] pseudo-class与pseudo-element有什么区别?