2 qwe885167759 qwe885167759 于 2016.02.16 11:58 提问

SSH框架中的过滤器,拦截器,监听器的作用和执行顺序

如题,网上搜了一些资料看了一下,还不是很清楚,求各位大神指导

2个回答

rui888
rui888   Ds   Rxr 2016.02.16 13:02
wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.02.16 14:36

首先,过滤器是在请求到达Server端之前执行的,或者响应结果到达客户端之前。功能是在服务器和客户端中间增加了一个中间层(类似于外观模式中间也是加了一层~~),可以对两者之间的交互进行统一的处理,每一个客户端提交的请求都需要通过过滤器的处理, 然后再进行其他的操作。它可以对客户端的请求进行预先处理,或者对服务器的响应结果进行后处理。在实际开发中,过滤器可以对用户统一的身份判断,ip访问限制, 用户发送请求字符编码转换, 对请求和响应进行加密和解密, 记录用户登录日志等。通常的web开发中的乱码问题,也可以通过Filter解决。
详情参考:http://blog.csdn.net/lovesummerforever/article/details/9924413
其次,拦截器是拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种可以提取action中可重用部分的方式。在AOP(Aspect-Oriented Programming)中拦截器用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。
最后,Servlet监听器,用来监听web容器的一些对象状态的变化,主要是ServletContext、HttpSession、HttpServletRequestl三类对象状态。
它们之间的执行顺序,监听器是容器启动时就会触发,过滤器在请求到底Action之前执行,拦截器则是请求到底action之后执行的。这几个概念还是比较基础的,也容易混淆的,值得仔细消化一下。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!