您的位置:首页 > 编程语言 > Java开发

Java学习(过滤器,监听器,拦截器)

2015-08-04 13:59 483 查看
转自:/article/8129084.html

过滤器

Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码、做一些业务逻辑判断等。

其工作原理是,只要你在web.xml文件配置好要拦截的客户端请求,它都会帮你拦截到请求,

此时你就可以对请求或响应(Request、Response)统一设置编码,简化操作;

同时还可进行逻辑判断,如用户是否已经登陆、有没有权限访问该页面等等工作。

它是随你的web应用启动而启动的,只初始化一次,以后就可以拦截相关请求,只有当你的web应用停止或重新部署的时候才销毁。

web.xml中过滤器的配置:

<filter>
<filter-name>XXXXXFilter</filter-name>
<filter-class>com.dotuian.XXXXXFilter</filter-class>
<init-param>
<param-name>charset</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>contentType</param-name>
<param-value>text/html;charset=UTF-8</param-value>
</init-param>
<filter>
<filter-mapping>
<filter-name>XXXXXFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


监听器

Servlet的监听器Listener,它是实现了javax.servlet.ServletContextListener 接口的服务器端程序,

它也是随web应用的启动而启动,只初始化一次,随web应用的停止而销毁。

它们能帮助开发者监听web中的特定事件,比如ServletContext,HttpSession,ServletRequest的创建和销毁;

变量的创建、销毁和修改等。可以在某些动作前后增加处理,实现监控。

web.xml中监听器的配置:

<listener>
<listener-class>com.dotuian.XXXXContextListener</listener-class>
</listener>


配置好了之后,以后在web应用中就可以通过ServletContext获取监听器中初始化的数据

Servlet的Listener监听器包括三种类型:

(1).ServletContextListener 监听ServletContext对象

(2).HttpSessionListener 监听Session对象

(3).HttpRequestListener 监听Request对象

拦截器

拦截器是在面向切面编程中应用的,就是在你的service或者一个方法前调用一个方法,或者在方法后调用一个方法。是基于JAVA的反射机制。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: