合肥建设学校官网网站,ps做设计想接私活在什么网站,制作网线的要点,上海袜网站建设1. AOP的认识 面向切面编程#xff1a;基于OOP基础之上新的编程思想#xff0c;OOP面向的主要对象是类#xff0c;而AOP面向的主要对象是切面#xff0c;在处理日志、安全管理、事务管理等方面有非常重要的作用。AOP是Spring中重要的核心点#xff0c;AOP提供了非常强…1. AOP的认识 面向切面编程基于OOP基础之上新的编程思想OOP面向的主要对象是类而AOP面向的主要对象是切面在处理日志、安全管理、事务管理等方面有非常重要的作用。AOP是Spring中重要的核心点AOP提供了非常强大的功能用来对IOC做补充。通俗点说的话就是在程序运行期间在不修改原有代码的情况下 增强跟主要业务没有关系的公共功能代码到 之前写好的方法中的指定位置 这种编程的方式叫AOP。 AOP在Spring框架中被用于 提供声明式的企业服务。最重要的此类服务是 声明式事务管理。让用户实现自定义切面用AOP补充他们对OOP的使用。 2. AOP核心概念和术语
2.1 切面Aspect 指关注点模块化这个关注点可能会横切多个对象。事务管理是企业级Java应用中有关横切关注点的例子。 在Spring AOP中切面可以使用通用类基于模式的方式schemabased approach或者在普通类中以Aspect注解AspectJ 注解方式来实现。
2.2 连接点Join point 在程序执行过程中某个特定的点例如某个方法调用的时间点或者处理异常的时间点。在Spring AOP中一个连接点总是代表一个方法的执行。
2.3 通知Advice 在切面的某个特定的连接点上执行的动作。通知有多种类型包括“around”, “before” and “after”等等。通知的类型将在后面的章节进行讨论。 许多AOP框架包括Spring在内都是以拦截器做通知模型的并维护着一个以连接点为中心的拦截器链。 前置通知Before advice: 在连接点之前运行但无法阻止执行流程进入连接点的通知除非它引发异常。 后置返回通知After returning advice:在连接点正常完成后执行的 通知例如当方法没有抛出任何异常并正常返回时。 后置异常通知After throwing advice: 在方法抛出异常退出时执行的通知。 后置通知总会执行After (finally) advice: 当连接点退出的时候执行的通知无论是正常返回还是异常退出。 环绕通知Around Advice:环绕连接点的通知例如方法调用。这是最强大的一种通知类型。环绕通知可以在方法调用前后完成自定义的行为。它可以选择是否继续执行连接点或直接返回自定义的返回值又或抛出异常将执行结束。 2.4 切点Pointcut 匹配连接点的断言。通知和切点表达式相关联并在满足这个切点的连接点上运行例如当执行某个特定名称的方法时。切点表达式如何和连接点匹配是AOP的核心Spring默认使用 AspectJ切点语义。
2.5 引入Introduction 声明额外的方法或者某个类型的字段。Spring允许引入新的接口以及一个对应的实现到任何被通知的对象上。例如可以使用引入来使bean实现 IsModified接口 以便简化缓存机制在AspectJ社区引入也被称为内部类型声明inter。
2.6 目标对象Target object 被一个或者多个切面所通知的对象。也被称作被通知advised对象。既然Spring AOP是通过运行时代理实现的那么这个对象永远是一个被代理proxied的对象。
2.7 AOP代理AOP proxy AOP框架创建的对象用来实现切面契约aspect contract包括通知方法执行等功能。在Spring中AOP代理可以是JDK动态代理或CGLIB代理。
2.8 织入Weaving 把切面连接到其它的应用程序类型或者对象上并创建一个被被通知的对象的过程。这个过程可以在编译时例如使用AspectJ编译器、类加载时或运行时中完成。 Spring和其他纯Java AOP框架一样是在运行时完成织入的。
3. 一图理解AOP核心概念
4. AOP的应用场景
日志管理权限认证安全检查事务控制
5. 如何使用AOP