JavaWeb三大组件分别是:Servlet小程序、Filter过滤器、Listener监听器。
一 Filter
Filter含义:
Filter同在我理解的狭义的Servlet一样,同样是一个接口,还有接下来的Listener。
Filter是服务器专门用来过滤请求,拦截响应的。
Filter的常见作用:
1 检查用户访问权限
2 设置请求响应编码,解决乱码问题
二 listener
1 Listener用于监听JavaWeb程序中的事件。
2 Listener和我们之前学习的JS中的事件处理机制类似。在JS中,当我们触发某个事件后(例如:点击一个按钮)程序会调用一个响应函数来处理事件。同样的,在JavaWeb中,我们可以为某些事件来设置监听器,当事件被触发时,监听器中的指定方法将会被调用。
3 Listener的原理是基于观察者模式的,所谓观察者模式简单来说,就是当被观察者的特定事件被触发(一般这某些方法被调用)后,会通知观察者(调用观察者的方法),观察者可以在自己的方法中来对事件做一些处理。
4 在我们的JavaWeb中,观察者就是Listener,而被观察者可能有三个ServletContext、HttpSession、ServletRequest。而事件指的就是这些对象的创建、修改和删除等。