基于Spring AOP实现的权限控制
1.AOP简介 AOP,面向切面编程,往往被定义为促使软件系统实现关注点的分离的技术。系统是由许多不同的组件所组成的,每一个组件负责一块特定的功能。除了实现自身核心功能之外,这些组件还经常承担着额外的职责。例如日志、事务管理和安全这样的核心服务经常融入到自身具有核心业务逻辑的组件中去。这些系统服务经常被称为横切关注点,因为它们会跨越系统的多个组件 下面介绍一下AOP相关的术语: 通知 : 通知定义了切面是什么以及何时使用的概念。Spring 切面可以应用5种类型的通知: 前置通知(Before):在目标方法被调用之前调用通知功能。 后置通知(After):在目标方法完成之后调用通知,此时不会关心方法的输出是什么。 返回通知(After-returning):在目标方法成功执行之后调用通知。 异常通知(After-throwing):在目标方法抛出异常后调用通知。 环绕通知(Around):通知包裹了被通知的方法,在被通知的方法调用之前和调用之后执行自定义的行为。 连接点 :是在应用执行过程中能够插入切面的一个点。 切点 : 切点定义了切面在何处要织入的一个或者多个连接点。 切面 :是通知和切点的结合。通知和切点共同定义了切面的全部内容。 引入 :引入允许我们向现有类添加新方法或属性。 织入 :是把切面应用到目标对象,并创建新的代理对象的过程。切面在指定的连接点被织入到目标对象中