JavaWeb监听器

三大组件:

l  Servlet

l  Listener

l  Filter

Listener:监听器

  1. 初次相见:AWT
  2. 二次相见:SAX

监听器:

l  它是一个接口,内容由我们来实现;

l  它需要注册,例如注册在按钮上!

l  监听器中的方法,会在特殊事件发生时被调用!

观察者:

l  事件源;

  • 小偷

l  事件;

  • 偷东西

l  监听器;

  • 警察
  • 监听器中的方法:抓捕

JavaWeb中的监听器

l  事件源:三大域!

  • ServletContext

¨       生命周期监听:ServletContextListener,它有两个方法,一个在出生时调用,一个在死亡时调用;

²  void contextInitialized(ServletContextEvent sce):创建SErvletcontext时

²  void contextDestroyed(ServletContextEvent sce):销毁Servletcontext时

¨       属性监听:ServletContextAttributeListener,它有三个方法,一个在添加属性时调用,一个在替换属性时调用,最后一个是在移除属性时调用。

²  void attributeAdded(ServletContextAttributeEvent event):添加属性时;

²  void attributeReplaced(ServletContextAttributeEvent event):替换属性时;

²  void attributeRemoved(ServletContextAttributeEvent event):移除属性时;

  • HttpSession

¨       生命周期监听:HttpSessionListener,它有两个方法,一个在出生时调用,一个在死亡时调用;

²  void sessionCreated(HttpSessionEvent se):创建session时

²  void sessionDestroyed(HttpSessionEvent se):销毁session时

¨       属性监听:HttpSessioniAttributeListener,它有三个方法,一个在添加属性时调用,一个在替换属性时调用,最后一个是在移除属性时调用。

²  void attributeAdded(HttpSessionBindingEvent event):添加属性时;

²  void attributeReplaced(HttpSessionBindingEvent event):替换属性时

²  void attributeRemoved(HttpSessionBindingEvent event):移除属性时

  • ServletRequest

¨       生命周期监听:ServletRequestListener,它有两个方法,一个在出生时调用,一个在死亡时调用;

²  void requestInitialized(ServletRequestEvent sre):创建request时

²  void requestDestroyed(ServletRequestEvent sre):销毁request时

¨       属性监听:ServletRequestAttributeListener,它有三个方法,一个在添加属性时调用,一个在替换属性时调用,最后一个是在移除属性时调用。

²  void attributeAdded(ServletRequestAttributeEvent srae):添加属性时

²  void attributeReplaced(ServletRequestAttributeEvent srae):替换属性时

²  void attributeRemoved(ServletRequestAttributeEvent srae):移除属性时

l  javaWeb中完成编写监听器:

  • 写一个监听器类:要求必须去实现某个监听器接口;
  • 注册,是在web.xml中配置来完成注册!

l  事件对象:

  • ServletContextEvent:ServletContext getServletContext()
  • HttpSessionEvent:HttpSession getSession()
  • ServletRequest:

¨       ServletContext getServletContext();

¨       ServletReques getServletRequest();

  • ServletContextAttributeEvent:

¨       ServletContext getServletContext();

¨       String getName():获取属性名

¨       Object getValue():获取属性值

  • HttpSessionBindingEvent:略
  • ServletRequestAttributeEvent :略

感知监听(都与HttpSession相关)

l  它用来添加到JavaBean上,而不是添加到三大域上!

l  这两个监听器都不需要在web.xml中注册!

HttpSessionBindingListener:添加到javabean上,javabean就知道自己是否添加到session中了。

转载于:https://www.cnblogs.com/danyuzhu11/p/6738163.html

javaWeb:相关监听方法汇总相关推荐

  1. html监听页面关闭事件,JS针对浏览器窗口关闭事件的监听方法集锦

    本文实例总结了JS针对浏览器窗口关闭事件的监听方法.分享给大家供大家参考,具体如下: 方式一:(适用于IE浏览器,而且刷新不提示,只在点击浏览器关闭按钮的时候提示) window.οnbefοreun ...

  2. html5中页面关闭事件监听,JS针对浏览器窗口关闭事件的监听方法集锦

    本文实例总结了JS针对浏览器窗口关闭事件的监听方法.分享给大家供大家参考,具体如下: 方式一:(适用于IE浏览器,而且刷新不提示,只在点击浏览器关闭按钮的时候提示) window.οnbefοreun ...

  3. 安卓Android绘制一个信息填写页面,使用了三种事件监听方法

    先上效果图片: 第一种,匿名内部类 //设置提交按钮监听submitButton.setOnClickListener(new View.OnClickListener() {@Overridepub ...

  4. eNSP第五篇扩展1:vrrp over nqa,nqa探测,双重vrrp监听方法1,vrrp与nqa结合

    vrrp over nqa 相信学习到这里的同学,已经不需求我在这里为大家讲解nqa到底是怎么一个技术,本篇着重讲述nqa和vrrp联合的一个工作场景是这样的: nqa与vrrp结合适合的最独特的场景 ...

  5. 【iOS】程序内跳转到支付宝转账(非SDK实现支付)及相关监听

    转载请注明出处 今天遇到了一个有意思的问题,就是支付调用支付宝,但是后台返的链接类似这种(https://qr.alipay.com/bax05299bjty5xvbkjii8018).这种链接直接打 ...

  6. iframe和父窗体之间的互相监听方法

    例如:一个父窗体点击了个提交表单事件,同时要将提交的服务器返回处理结果显示在父窗体的iframe页面中,父窗体通过获得iframe中返回的结果来处理父窗体的部分数据.此时就要监听iframe的内容变更 ...

  7. Linux服务器oracle数据库重启服务、重启监听方法,oracle数据库sysdba管理员登录方法

    数据库重启服务.监听全套流程如下: 注: 如果是修改数据库的一些参数.配置文件只需重启数据库服务即可. 注: 如果是修改数据库 ip.端口号.实例名,只需要重启数据库监听即可. 首先通过 su - o ...

  8. 键盘出现与消失的监听方法

    使用广播通知,在viewWillAppear时注册键盘打开和关闭的事件监听,在viewWilldisappear时解除键盘打开和关闭的事件监听.请注意viewWillAppear和viewWilldi ...

  9. android 控件监听方法是,Android | Android中监听Button的实现

    Android中监听Button的实现 单按钮监听 2018-04-27_061911.jpg 1.在按钮所属的父Activity里,创建按钮变量 private Button mBtnTextVie ...

最新文章

  1. mysql 加密方式 caching_sha2_password 和 mysql_native_password 说明
  2. 96.总线里的异步通信
  3. BugKuCTF WEB 管理员系统
  4. C++ Multisets
  5. 一个封装了的ADO类,功能非常强大,并做了一个DEMO演示如何操作ACCESS数据库
  6. ItelliJ IDEA开发工具使用—创建一个web项目
  7. mysql访问类型最好的_【干货满满】最全的MySQL性能指南(一):选择最佳的数据类型...
  8. 谷歌浏览器不兼容小于12px的字体,在做网页的时候怎么解决
  9. yum安装Apache2.4
  10. 11.并发编程--同步类容器和并发类容器
  11. python(猜数字游戏)
  12. 银行核心系统之假期表
  13. 创业公司中运营人员的典型一天是怎么度过的?
  14. MOGRE学习笔记(2) - MOGRE基础知识总结
  15. win10 开机不显示bios选单的一种解决办法
  16. 计算机毕业设计ssm+vue基本微信小程序的拼车自助服务小程序-网约车拼车系统
  17. 【数据库】数据库入门(二): 关系型数据库
  18. 椭圆曲线上的群和构造方法
  19. position inherit 定位
  20. (附源码)Node.js自我展示博客网站 毕业设计 231547

热门文章

  1. VC++ COMBO BOX控件的使用
  2. iOS多线程系列之GCD栅栏(barrier)实现同步锁
  3. Elixir 1.7改进错误处理、日志和测试
  4. 从零开始,CentOS6安装ghost博客
  5. Objective-C Runtime 运行时之六:拾遗
  6. linux C(hello world)最大公约数和最小公倍数
  7. Response.Write 用法总结
  8. 擷取 GridView 資料列的欄位值集合
  9. 可以设置选项背景颜色的DropDownList
  10. oracle insert 字符插入问题