JSP过滤器、Session监听器、Servlet控制器的关系和执行顺序
1、首先配置好过滤器和监听器,访问index.jsp页面
(在index.jsp中设置session的Attribute属性、session的失效时间,查看的顺序是什么?);

1、运行Tomact的结果

过滤器的初始化方法会在服务器运行的时候执行。
2、进入index.jsp页面的结果

这个时没有在index中使用session.setAttribute();
根据该图片可以看出来,我们在执行打开一个网页的时候就是创建了一个会话。
3、这个时候我们再加入session.setAttribute()的方法,并且设置session失效时间;

首先显示的时我们的session创新成功,调用了create的方法。
在设置30秒失效后:

等待30秒,session失效:

这样我们可以看到Session的销毁,会调用destroyed的方法。同时会移除我们之前设置的Session属性。
4、还有一种情况Session的Add方法不会执行:

修改后,此时我们再次刷新页面发现只有session创建成功,并没有session添加成功的信息显示,这是为什么呢?。
5、session设置的值为空(null)时:

之所以没有调用Add的方法,就是因为我们的设置值为空,所以系统并不会特意的去调用Add方法添加一个空值;
6、哪如果我们重复设置一个session属性会怎么样呢?

我重复刷新了访问了3次页面,第一个是添加session,第二次是替换了原来的session,第三次也是替换。
并且可以看出来每次页面的访问都会调用过滤器。
7、这时我们再点index,jsp页面上的跳转按钮跳转到servlet控制页面:

这时候可以看到我们的servlet首先执行的是init初始化方法,让后执行的是过滤器(这里有必要说明以下,servlet其实也是一个页面,只是他是一个不可见的页面,在访问时同样会调用过滤器。)然后系统会根据我们提交的方法执行doGet或者时doPost方法;
8、这时候我们再此点击index.jsp中的servlet按钮:

init初始化方法并没有再执行,也就是说我们的初始话方法只会在第一次运用到页面的时候执行一次。
总结:在以上一系列实验中可以看出来,过滤器>监听器>Servlet控制器。
此上都为个人实验所得结果,如果有什么不对的地方希望能得到大家的指正,万分感谢。
JSP过滤器、Session监听器、Servlet控制器的关系和执行顺序的更多相关文章
- 【spring-boot神器】第一篇:拦截器,过滤器,监听器,控制器,消息转换器,AOP执行顺序
整理一下这几天学习的资料和代码 第一部分.上代码 1.spring各种器的实现,idea搭建spring-boot的教程在这里http://www.jianshu.com/p/9082a533fa3c ...
- tomcat各版本和jsp、jstl、servlet的依赖关系(转)
Servlet / JSP / Tomcat Version Servlet/ JSP Tomcat 2.5/2.1 6.0.18 2.4/2.0 5.5.27 2.3/1.2 4.1.3 ...
- wex5 实战 wex5与js的组件关系与执行顺序(父子与先后)
初学wex5,先理理让人容易混淆的三个概念: 一 基本概念: 1 wex5组件,顾名思义,在编辑窗口右侧的组件集合里的,都是wex5基于开源自创的组件,并封装了一套自已的方法.目的是为了方便.相关方法 ...
- mousedown、mouseup、click事件之间的关系及执行顺序
三个事件的触发时机 mousedown 当鼠标指针移动到元素上方,并按下鼠标按键(左.右键均可)时,会发生 mousedown 事件.与 click 事件不同,mousedown 事件仅需要按键被 ...
- 面试之servlet、过滤器、监听器
servlet.过滤器.监听器servlet是Java中WEB请求和响应的容器servlet的运行需要在类似tomcat容器中,一个 Web 应用对应一个 Context 容器,也就是 Servlet ...
- JAVAWEB过滤器、监听器的作用及使用>从零开始学JAVA系列
目录 JAVAWEB过滤器.拦截器的作用及使用 过滤器Filter 什么是过滤器 为什么要使用过滤器(过滤器所能解决的问题) 配置一个过滤器完成编码的过滤 编写一个EncodingFilter(名称自 ...
- 动手学servlet(六) 过滤器和监听器
过滤器(Filter) 过滤器是在客户端和请求资源之间,起一个过滤的作用,举个例子,比如我们要请求admin文件夹下的index.jsp这个页面,那么我们可以用一个过滤器,判断登录用户是不是管理员 ...
- Servlet过滤器和监听器知识总结(转)
Servlet过滤器和监听器知识总结(转) Servlet过滤器是 Servlet 程序的一种特殊用法,主要用来完成一些通用的操作,如编码的过滤.判断用户的登录状态.过滤器使得Servlet开发者能 ...
- 我的Java之旅 第八课 Servlet 进阶API、过滤器与监听器
1.Servlet.ServletConfig与GenericServlet 首次请求的顺序 => 生成HttpServletRequest与HttpServletRespon ...
- SpringBoot09 自定义servlet、注册自定义的servlet、过滤器、监听器、拦截器、切面、webmvcconfigureradapter过时问题
1 servlet简介 servlet是一种用于开发动态web资源的技术 参考博客:servlet基础知识 httpservlet详解 2 在springboot应用中添加servlet sp ...
随机推荐
- activemq插件在eos中的开发
ActiceMQ-CPP消息插件是CMS的一种实现,是一个能够与ActiveMQ进行通信的C++客户端库,ActiveMQ-CPP的架构设计能够支持可插拨的传输协议和消息封装格式,并且支持客户端容量, ...
- 【Python】bytes和hex字符串之间的相互转换
十六进制字符串:a="CC DD 01 61 F6 01 00 64 A4 81 00 00 00 8B" b=bytes.fromhex(a) 转为字节 from socket ...
- vue学习笔记(四)---- 品牌管理案例
一.导入相关包 <script src="../lib/vue2.6.10.min.js"></script> <script src=". ...
- 9月22日内容总结——计算机五大组成部分详解、编程语言及发展史、python解释器安装与环境变量设置
内容总结 目录 内容总结 一.计算机五大组成部分详细介绍 1.控制器 2.运算器 3.存储设备 4.输入设备 5.输出设备 二.计算机三大核心硬件 1. cpu 2.内存 举例:写文档时,突然关机了. ...
- JSONPath 处理特殊字符
JSONPath 处理特殊字符 先来看看jsonpath的基础 语法 $ 表示文档的根元素 @ 表示文档的当前元素 .node_name 或 ['node_name'] 匹配下级节点 [index] ...
- Vue20 生命周期
转:https://blog.csdn.net/weixin_45791692/article/details/124045505 1 简介 Vue的生命周期就是vue实例从创建到销毁的全过程,也就是 ...
- WinRAR的 安装与下载
一.简介 WinRAR 是一个强大的压缩文件管理工具.它能备份你的数据,减少你的 E-mail 附件的大小,解压缩从 Internet 上下载的 RAR.ZIP 和其他格式的压缩文件,并能创建 RAR ...
- 《深入理解java虚拟机》第七章读书笔记——虚拟机类加载机制
系列文章目录和关于我 一丶虚拟机类加载机制是什么 java虚拟机将描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可用被虚拟机直接使用的java类型. 二丶类加载时 ...
- Struts2文件配置介绍
Struts2文件配置介绍 struts2 structs.xml文件配置 标签 package标签 <?xml version="1.0" encoding="U ...
- Linux提权之:利用capabilities提权
Linux提权之:利用capabilities提权 目录 Linux提权之:利用capabilities提权 1 背景 2 Capabilities机制 3 线程与文件的capabilities 3. ...