04月13日 晴 一般般
又是一个让人兴奋的一天,为啥?没为啥,学习使我兴奋~ 今天依然是WEB阶段内容,讲的是filter跟listener组件,翻译成中文就是过滤器与监听器。本来顾名思义挺好的, 刀哥一解释:filter用于打劫,listener用于偷窥。
Filter
来张刀哥魔性图
我与女票行走路线为request行走流程,大山为filter,丈母娘家为serlvet
场景1:带女票子去娘家提亲,途径大山,山大王不在,顺利回到娘家
filter作用1:满足某种条件放行请求
场景2:带女票子去娘家提亲,途径大山,偶遇老乡,帮忙捎带山货回娘家
filter作用2:对通过的请求进行加工与改造,实现更复杂逻辑
场景3:带女票子去娘家提亲,途径大山,被山大王看上,成压寨夫男,女票子伤心陪嫁,无缘娘家。
filter作用3:截断请求。
哈哈,好像是那么一回事。
Listener
讲Listener时,刀哥讲了一个很猥琐的故事:偷窥男秘事
监听机制:监听对象,监听事件(触发行为),事件响应
监听对象:妹子
监听事件:妹子进屋了
事件响应:猥琐男马上做猥琐事
整体逻辑:妹子进屋,通过摄像头让猥琐男发现后,马上执行猥琐操作。
类比到:web的监听器
web监听分6种:
共享对象监听器
1:ServletContextListener
当web容器启动或销毁时,执行约定的逻辑。
2:HttpSessionListener
当session会话创建或销毁时,执行约定的逻辑。
3:ServletRequestListener
当请求创建或销毁时,执行约定的逻辑。
共享对象为监听对象, 创建,启动,销毁为监听事件(触发的行为),执行预定逻辑(事件响应)
共享对象属性监听器
4:ServletContextAttributeListener
5:HttpSessionAttributeListener
6:ServletRequestAttributeListener
4 5 6 3个监听器跟上面3个一样,只不过监听的事件(触发的行为)改为属性的添加,删除,更新了。
相对来说, 1, 2, 3使用频率高于4 5 6...
总结一下:
filter用于打劫,listener用于偷窥。