Listener ->监听器
1.它是一个接口,需要我们来实现。
2.他需要注册,注册在设置的需要监听的单元(如按钮)
3.监听器的方法发生在特殊事件被调用时候
观察者 -->有三要素
1.事件源
2.事件
3.监听器
Javaweb中的监听器
ServletContext
-> ServletContextListener 服务器启动的时候生,服务器关闭死亡
生命周期监听:一个在出生时调用。一个是在死亡时调用
属性监听:添加替换移除属性时候调用
HttpSession
-> HttpSessionListener 访问才会创建(getSession)
JSP底层自动会有个getSession方法,自动创建
生命周期监听:一个在出生时调用。一个是在死亡时调用
属性监听:添加替换移除属性时候调用
ServletRequest
-> ServletRequestListener ->动态请求发出创建。
生命周期监听:一个在出生时调用。一个是在死亡时调用
属性监听:添加替换移除属性时候调用
注意:监听器注册要在web.xml配置,必须实现监听器监听器接口!!!
其他知识:
感知监听
用来添加到javabean上而不是三大域
和session相关,无需在web.xmnl中注册
HttpSessionBuildingListener
在user类实现SessionBuildingListener接口,user就会知道是否被添加到session中
HttpSessionActivationListener
监听user是否随session一起钝化或者活化。
要实现序列化serializable接口,才能保证session钝化的时候能把user保存在硬盘上。