session的活化与钝化就是当用户访问时网站异常,不能丢掉session,所有也必须采用文件存储;和之前那个统计网站访问量一样的原理。
 class Person implements必须实现这两个接口,实现session活化和钝化的要求
活化:从硬盘上读取到内存中
纯化:从内存中写到硬盘上
HttpSessionActivationListener 
实现此接口的JavaBean,可以感知自己被活化(从硬盘到内存)和钝化(从内存到硬盘)的过程。

如果需要同时保存Session中的JavaBean则JavaBean也要实现Serializable序列化接口。

实现此接口的JavaBean与HttpSessionBindingListener一样,不必配置到web.xml中。

import java.io.Serializable;  
    import javax.servlet.http.HttpSessionActivationListener;  
    import javax.servlet.http.HttpSessionEvent;  
    public class Person implements HttpSessionActivationListener,Serializable{  
        private static final long serialVersionUID = 1L;  
        private String name;  
        public Person(String name) {  
            this.name = name;  
        }  
        @Override  
        public void sessionWillPassivate(HttpSessionEvent se) {  
            System.out.println("一个Person对象钝化了呵呵...");  
        }  
      
        @Override  
        public void sessionDidActivate(HttpSessionEvent se) {  
            System.out.println("一个Person对象活化了呵呵...");  
        }  
      
        @Override  
        public String toString() {  
            return "Person [name=" + name + "]";  
        }  
    }

这个实现之后都不算什么,还需要配置文件。
配置文件可以写在tomcat的目录里面conf---》server.xml里面配置,但是里面配置会修改平台,
所以不建议使用。另一种方法:我们在conf----》Catalina------》localhost------》自定义一个xml文件,里面内容:

<Context path="/sessionActivation" docBase="E:/MyEclipse10_workspace/sessionActivation/WebRoot">  
  
  <Manager className="org.apache.catalina.session.PersistentManager"   
    saveOnRestart="true" maxActiveSessions="1">  
     <Store className="org.apache.catalina.session.FileStore" directory="d:/a">  
     </Store>  
  </Manager>  
  
</Context>  
  
  
<!--  以下是对上面的解释    -->  
<!-- path为项目的目录   docbase 为myeclipse目录  
    className   不能变   
    saveOnRestart ="true"  能够进行存储  
    maxActiveSessions="n"  n为最大的session数量  
      
-->

这样就可以实现session的活化了。
自己总结:
 服务器重启用户session信息保存和恢复(服务器维护需要)

httpsessionActivationlistener

活化(sessiondidactivate)和钝化sessionWillpassivate

public class person implements  httpsessionactivationlistener,serviliziable(可序列化,永久存储){

活化和钝化方法《主要的还是xml文件的配置》

}

WEB中监听者的类型:ServletContextListener(最大的)

HttpSessionListener(session创建能访问,销毁)(onlineweb)

活化和钝化需要配置tomcat服务器 (1,servce.xml---2,work catalina   自定义.xml文件)

配置路径---D:\javaSoft\apache-tomcat-7.0.30\conf\Catalina\localhost 需要写一个xml文件,
让服务器启动的时候读取或者配置server.xml(   <Host name="localhost"  appBase="webapps")改平台

session的活化和钝化相关推荐

  1. IDEA之Session的活化和钝化

    Session活化和钝化的服务器调优,性能优化方案 ,网上已经很多了,这里我就强调一下 应用场景,总之这个很重要. 应用场景: 1.一般来说,服务器启动后,就不会再关闭了,但是如果逼不得已需要重启,而 ...

  2. Tomcat 之 Session的活化和钝化 源码分析

    概要 Session活化:从硬盘上读取序列化的session到内存中 Session钝化:把内存中的session序列化到硬盘上 Tomcat中两种Session钝化管理器 session钝化机制是由 ...

  3. 服务器端会话技术Session|| Session的原理||Session的细节||session的钝化session的活化||session的特点||session与Cookie的区别

    Session 1. 概念:服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中.HttpSession 2. 快速入门:     1. 获取HttpSession对象:   ...

  4. idea 配置 tomcat session 无法活化

    idea 配置 tomcat session 无法活化 参考网址: https://blog.csdn.net/weixin_44142032/article/details/89004986?ops ...

  5. session活化与钝化

    会话的持久化: 本篇解决一个问题,就是当正在浏览页面的时候服务器突然关闭,浏览器不关闭,当再次开启服务器时还能够恢复关闭时的页面 HttpSessionActivationListener  实现此接 ...

  6. JavaWeb-WEB核心7 会话技术 理解什么是会话跟踪技术掌握Cookie的使用掌握Session的使用(钝化、活化)完善用户登录注册案例的功能

    会话技术 今日目标 理解什么是会话跟踪技术 掌握Cookie的使用 掌握Session的使用 完善用户登录注册案例的功能 1,会话跟踪技术的概述 对于会话跟踪这四个词,我们需要拆开来进行解释,首先要理 ...

  7. Listener(监听器)

    Listener(监听器) Listener简介 Listener是JavaWeb中三大组件之一.Servlet.Filter.Listener 三大组件都有的共同特点,都需要实现一个接口,并在web ...

  8. Java 序列化 之 Serializable

    概念 序列化:就是把对象转化成字节. 反序列化:把字节数据转换成对象. 对象序列化场景: 1.对象网络传输 例如:在微服务系统中或给第三方提供接口调用时,使用rpc进行调用,一般会把对象转化成字节序列 ...

  9. Listener监听器与Filter过滤器

    1.Listener     [1]监听器简介         > Listener是JavaWeb的三大组件之一,Servlet.Filter.Listener         > Li ...

  10. java过滤器原理,拦截器,过滤器,监听器 区别及执行顺序

    本文引用该作者(花开半夏)著作内容,觉得写的很好,记录一下便于回看防止失踪,更多详情请查看原作者. 同时还搜罗了其他便于理解的博文感兴趣的可以看看促进理解 拦截器,过滤器,监听器执行顺序(被拦截个人过 ...

最新文章

  1. Linux 环境 搭建Git 服务器,并且修改SSH端口使用
  2. XILINX资源获取
  3. python读取文件-python读取大文件
  4. sklearn学习(一)
  5. 还在对java类、类的加载一知半解?这篇文章相信会解决你80%的困惑
  6. STM32手册中的CAN过滤器16位标识符屏蔽配置错误说明
  7. SAP UI5框架 component.js的加载原理
  8. 学写Windows Service
  9. spider_使用随机User-Agent库, 爬取笔趣阁万古天帝章节目录_(fake_useragent)
  10. 含蓄:为彼此的交往留下余地 — 《别输在不会表达上》
  11. ESP8266-Arduino编程实例-L3G4200D三轴陀螺仪驱动
  12. php地图找房代码,腾讯地图实现地图找房功能
  13. ER图(实体联系图)
  14. 乡村少年宫计算机教师简介,乡村少年宫教师感言
  15. Zabbix5.0监控服务器并设置邮件告警(安装Agent)
  16. 发布苹果App有哪些步骤流程
  17. 五脏六腑在脸上的反射区图片_面部五脏反射穴位图
  18. pythongui做计算器_Python——GUI编程 利息计算器 作业9(python programming)
  19. GNN in KG(一) Modeling Relational Data with Graph Convolutional Networks,ESWC2018
  20. 解决eclipse中没有js代码提示的问题

热门文章

  1. 机器人语音问答流程及借助百度API Python实现
  2. mac终端查看IP信息
  3. 台式计算机如何自动关机,台式电脑如何设置定时关机
  4. 干货分享!一份你不知道的武汉Web前端开发学习攻略
  5. 计算机组装与维护标准教程(2010-2012版)电子教材,计算机组装与维护标准教程(2015—2018版)...
  6. 美赛数模论文之优缺点写作
  7. 云计算基础与应用 第二章 云计算技术架构
  8. 局域网传输文件的几种方法盘点
  9. 微信手写板 android,微信小程序:手写板功能实现(canvas)
  10. oracle database lite,Oracle Database Lite Client 10