解释一下Java反射,aop,拦截器,过滤器。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解释一下Java反射,aop,拦截器,过滤器。相关的知识,希望对你有一定的参考价值。
java反射:java程序在运行的时候能够获取类与对象的信息并使用对象。AOP:面向切面编程,目前很火,采集动态代理模式实现,用于日志、事务、权限、异常处理等。
拦截器:Struts与Spring都有拦截器,都是基于AOP思想实现的。
过滤器:是sevlet里的概念,使用的是责任链模式。
这些东西很难用一句话说清楚,我只是按自己的理解简略的说下,想搞清楚建议先学习下java的动态代理。 参考技术A 参考http://baike.haosou.com/doc/5458411-5696799.html 参考技术B 这几句话说不清的
AOP与拦截器过滤器之间的关系
面试中经常会被问到拦截器,过滤器,AOP之间有什么关系。本文将探讨一下他们之间的关系。
通过前面一系列对AOP的文章的介绍,我相信大家都对AOP比较熟悉了。AOP似乎和拦截器、过滤器的功能相似。那么问题来了,aop与拦截器、过滤器是什么关系。
先来回顾一下拦截器与过滤器。如下图一网友的测试,在web.xml中注册了TestFilter1和TestFilter2。然后在spring的配置文件中配置了BaseInterceptor和TestInterceptor。得到的结果如下图所示。从图中可以看出,拦截器和过滤器都横切了业务方法,看似符合aop的思想。
Interceptor拦截器:拦截以 .action结尾的url,拦截Action的访问。
Spring AOP拦截器:只能拦截Spring管理Bean的访问(业务层Service)
通过上图我们详细的介绍了拦截器,过滤器,AOP的关系和区别。
以上是关于解释一下Java反射,aop,拦截器,过滤器。的主要内容,如果未能解决你的问题,请参考以下文章