详解详解Spring AOP 拦截器的基本实现拦截器的基本实现
本篇文章主要介绍了详解Spring AOP 拦截器的基本实现,小编觉得挺不错的,现在分享给大家,也给大家做个
参考。一起跟随小编过来看看吧
一个程序猿在梦中解决的一个程序猿在梦中解决的 Bug
没有人是不做梦的,在所有梦的排行中,白日梦最令人伤感。不知道身为程序猿的大家,有没有睡了一觉,然后在梦中把睡之
前代码中怎么也搞不定的 Bug 给解决的经历?反正我是有过。
什么是什么是 AOP ??
AOP 为 Aspect Oriented Programming 的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统
一维护的一种技术。AOP 是 OOP 的延续,是软件开发中的一个热点,也是 Spring 框架中的一个重要内容,是函数式编程的
一种衍生范型。利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可
重用性,同时提高了开发的效率。
翻译为人能听懂的话来说就是: AOP 可以理解为在方法执行前后可以去完成相同的业务逻辑,而不需要你去改业务代码。举
个例子吧:现在有一个需求,要在项目中的每一个方法前面都输出一句:开始执行啦! 需求很明确了,常规的解决方式就是
在每个具体的方法最前面加一句system.out.print("开始执行啦!");,冒出这个想法的程序员是普通程序猿,当然,这是开个玩笑啦!
这样的代码,如果一两个方法用这样的方式没有任何问题完全可行,如果几十个、几百个这样的方法呢?
这时候,我们就可以使用 AOP 来完成以上逻辑了,不需要改动任何一个方法,无侵入的方式来完成这个需求。
AOP 在实际项目中运用的场景主要有权限管理(Authority Management)、事务管理(Transaction Management)、安全管
理(Security)、日志管理(Logging)和调试管理(Debugging)等。就是这些与业务逻辑不是很关联密切的公共方法,我们
就可以使用AOP。
Spring AOP 和和 MVC 拦截器拦截器 又是什么?又是什么?
通过上面的解释,我是知道了,AOP 其实就是可以算一种设计模式,或者说一种编程思想,而 Spring AOP 就是 Spring框架
对 AOP 这种思想进行了一系列技术实现和封装,让我们只需要配置一下就可以达到这个模式,在配置文件中使
用<aop:config>元素。那MVC 拦截器又是什么鬼呢?可以理解为是 Spring MVC 框架对 AOP 的一种实现方式,在配置文件中使
用<mvc:interceptors>元素进行配置。这两种方式就是实现了 AOP 的编程思想,我们只需要进行一定的配置就可以了。现在好多
人也都把 Spring AOP 和 MVC 拦截器看成是一种相同的方式,都叫拦截器或AOP。
开始撸一下代码开始撸一下代码
1.新建一个TestInterceptor类继承于HandlerInterceptorAdapter。
评论0