spring_AOP编程

Posted tunan96

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring_AOP编程相关的知识,希望对你有一定的参考价值。

AOP:面向切面编程思想,利用“动态代理”的技术,可以在不改变“目标对象”的基础上,对目标对象的方法进行增强。

通过简单案例引入AOP:

有一个UserServiceImpl类,里面有一个remove方法后来有个新需求

需求1:希望在调用remove方法删除数据前进行权限校验【对remove方法进行增强】

 

需求2:希望在调用UserServiceImpl类所有的方法前进行权限校验

 

需求3:希望整个项目中的所有的service类的所有关于数据操作的方法执行前进行权限校验

用工具类,将权限校验的方法定义在工具类中,方便各个类中的方法中进行调用,目前最好的方式。

      Java中有个动态代理技术:Proxy反射包下的api

            目标对象:需要被增强的类new创建出来的对象,比如此时的UserServiceImpl

            代理对象:动过动态代理技术创建出来的与目标对象类型相同的对象

 

以上是关于spring_AOP编程的主要内容,如果未能解决你的问题,请参考以下文章

Spring_Aop

spring_aop注解

Spring_Aop_

spring_aop注解

Spring_AOP的实现机制-动态代理

spring_AOP