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控制器的关系和执行顺序的更多相关文章

  1. 【spring-boot神器】第一篇:拦截器,过滤器,监听器,控制器,消息转换器,AOP执行顺序

    整理一下这几天学习的资料和代码 第一部分.上代码 1.spring各种器的实现,idea搭建spring-boot的教程在这里http://www.jianshu.com/p/9082a533fa3c ...

  2. 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 ...

  3. wex5 实战 wex5与js的组件关系与执行顺序(父子与先后)

    初学wex5,先理理让人容易混淆的三个概念: 一 基本概念: 1 wex5组件,顾名思义,在编辑窗口右侧的组件集合里的,都是wex5基于开源自创的组件,并封装了一套自已的方法.目的是为了方便.相关方法 ...

  4. mousedown、mouseup、click事件之间的关系及执行顺序

      三个事件的触发时机 mousedown 当鼠标指针移动到元素上方,并按下鼠标按键(左.右键均可)时,会发生 mousedown 事件.与 click 事件不同,mousedown 事件仅需要按键被 ...

  5. 面试之servlet、过滤器、监听器

    servlet.过滤器.监听器servlet是Java中WEB请求和响应的容器servlet的运行需要在类似tomcat容器中,一个 Web 应用对应一个 Context 容器,也就是 Servlet ...

  6. JAVAWEB过滤器、监听器的作用及使用>从零开始学JAVA系列

    目录 JAVAWEB过滤器.拦截器的作用及使用 过滤器Filter 什么是过滤器 为什么要使用过滤器(过滤器所能解决的问题) 配置一个过滤器完成编码的过滤 编写一个EncodingFilter(名称自 ...

  7. 动手学servlet(六) 过滤器和监听器

     过滤器(Filter) 过滤器是在客户端和请求资源之间,起一个过滤的作用,举个例子,比如我们要请求admin文件夹下的index.jsp这个页面,那么我们可以用一个过滤器,判断登录用户是不是管理员 ...

  8. Servlet过滤器和监听器知识总结(转)

    Servlet过滤器和监听器知识总结(转)  Servlet过滤器是 Servlet 程序的一种特殊用法,主要用来完成一些通用的操作,如编码的过滤.判断用户的登录状态.过滤器使得Servlet开发者能 ...

  9. 我的Java之旅 第八课 Servlet 进阶API、过滤器与监听器

    1.Servlet.ServletConfig与GenericServlet     首次请求的顺序      => 生成HttpServletRequest与HttpServletRespon ...

  10. SpringBoot09 自定义servlet、注册自定义的servlet、过滤器、监听器、拦截器、切面、webmvcconfigureradapter过时问题

    1 servlet简介 servlet是一种用于开发动态web资源的技术 参考博客:servlet基础知识     httpservlet详解 2 在springboot应用中添加servlet sp ...

随机推荐

  1. Python解释器下载与安装

    Python解释器下载与安装 一.Python解释器 1.Python的发展方向 web方向,自动化运维,自动化测试,自动化办公,网络爬虫,金融量化,人工智能,机器学习,数据分析 2.Python解释 ...

  2. sync/atomic 原子操作使用与解析

    目录 前言 1. 引入 2. sync.atomic 原子操作 2.1 什么是原子操作 2.2 各种 API 的作用 2.2.1 Store 操作 2.2.2 Load 操作 2.2.3 Add 操作 ...

  3. tomcat8 性能优化参考

    https://www.jianshu.com/p/c770c1e97531 tomcat8 性能优化参考

  4. Django框架之drf:9、接口文档,coreapi的使用,JWT原理、介绍、快速使用、定制、认证

    目录 Django框架之drf 一.接口文档 二.CoreAPI文档生成器 1.使用方法 三.JWT 1.JWT原理及介绍 2.JWP快速使用 3.定制返回格式 4.JTW的认证类 Django框架之 ...

  5. evil 控制窗口大小,比快捷键方便

    下面是vim原本的支持的键 可以用于 emacs evil ,evil 用这个比用快捷键还方面些 1.纵向调整 :res[ize] num 指定当前窗口为num列num行 :res[ize] +num ...

  6. BIO和NIO的基本用法和API讲解

    1 BIO 可以理解为Blocking IO 是同步阻塞的IO,也就是说,当有多个请求过来的时候,请求会呈现为链状结构,遵循先进先出的原则 1.1 单线程版本 1.1.1 服务端 //服务端单线程处理 ...

  7. Error: EPERM: operation not permitted, mkdir ‘C:\Program Files\nodejs‘TypeError: Cannot read proper

    出现问题: 问题如题,出现场景:vscode运行npm命令 解决办法: 有的友友说安装nodejs时用管理员身份安装,右键没找到最后删掉了此文件即可. 这个文件缓存了之前的配置与现在安装的nodejs ...

  8. vulnhub靶场之DRIFTINGBLUES: 9 (FINAL)

    准备: 攻击机:虚拟机kali.本机win10. 靶机:DriftingBlues: 9 (final),下载地址:https://download.vulnhub.com/driftingblues ...

  9. .net 定时任务(调度 .net quartz) demo

    详细解说:https://blog.csdn.net/noaman_wgs/article/details/80984873 demo如下: 新建控制台应用程式: 添加Nuget包 static vo ...

  10. gdbOF阅读笔记

    前言 今天阅读了一本说明书,<gdbOF: A Debugging Tool for OpenFOAM> 受himryangzz视频启发去读相关内容,在此对himryangzz表示感谢 希 ...