WEB开发(5) Listener

本文详细介绍了Java Web中监听器(Listener)的作用及其实现方式,包括8种主要的监听器类型,如HttpSessionListener、ServletContextListener等。监听器能够在session、context、request产生或销毁时做出响应,用于收集在线用户信息、获取web.xml配置和执行请求前后的操作。此外,还探讨了如何利用Listener实现单态登录和显示在线用户。

59ca52367ac0685ff02af867e101c6ea40c.jpg

f38181cc403cad08a3d451d50fe278c460c.jpg

Listener类比于各种其他swing中的listener

9fb3809899264ef6e10dcedd015c54327cf.jpg 

1f65b4a2f24fb5c60ae11c11a20cb117996.jpg

listener就相当于每当session、context、request产生或销毁(属性变化)等的时候就会出现反应一下,类似构造器的感觉。共有8种。

另有一个Listener能够监听存放在Session中的对象,有六种Event。

监听对象的创建和销毁

HttpSessionListener、ServletContextListener、ServletRequestListener分别能够对应三种对象的创建和销毁:session、context、request

87af82ca0fabc886a24b56129cfab5b3809.jpg

第一个,能够收集在线者的信息;第二个额能够用于获取web.xml中的配置;第三个在用户请求前后执行,多张图可能会有多个request

监听对象的变化

cdc147aee76e58523e0975fee3f2f8590ce.jpg

至此,总共有六种Listener,

三个创建销毁的(HttpSessionListener、ServletContextListener、ServletRequestListener)

三个对象变化的(HttpSessionAttributeListener、ServletContextAttributeListener、ServletRequestAttributeListener)

监听Session内的对象

f54b2eeeaaa955be465a52cc4a1e4362bb5.jpg

Listener实现单态登陆

即是同一时间只能在一处登陆。

61f318c8e61983b03743848f3ce0e6b8e7f.jpg

Singleton

显示在线用户

 

8b07605babb353b4781a0b0c419b1325088.jpg

和Servlet业务没有任何挂钩

4fd68395f85ca1f54bfd4fd63d8edcf5351.jpg

 

其实就是创建了一个ApplicationConstants的类存储静态变量,每次有创建销毁都出来更新一下值。

fc00ded0e70e75e116a7ed847d294d0341d.jpg

转载于:https://my.oschina.net/swanf/blog/3075443

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值