`
haiziwoainixx
  • 浏览: 415120 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

spring Aop概念

阅读更多

 

AOP概念

切面(Aspect 与类很相似,切面是横切性关注点的抽象

目标对象(Target Object

AOP代理类(AOP Proxy jdk cglib

连接点(Joinpoint  被拦截到的点,指调用某方法或者处理某异常

切入点(Pointcut   匹配连接点的断言,一系列连接点的集合,它指明处理方式(Advice)将在何时被触发

通知(Advice  拦截到joinpoint之后要做的事情

前置通知(Before advice):在某连接点之前执行的通知

后置通知(After returning advice):在某连接点正常完成后执行的通知

异常通知(After throwing advice):在方法抛出异常退出时执行的通知

环绕通知(Around Advice):包围一个连接点的通知

最终通知(After (finally) advice):当某连接点退出的时候执行的通知(不论是正常返回还是异常退出)。

 

 

织入(Weaving 指将aspects应用到target对象    并导致proxy对象创建      的过程  spring aop

 

execution (* com.puckasoft.dao.PhotoDao.* (..))

 

AOP配置

xmlns:aop="http://www.springframework.org/schema/aop"

http://www.springframework.org/schema/aop

http://www.springframework.org/schema/aop/spring-aop-2.5.xsd

 

加入jar

   spring-framework-2.5.6\lib\aspectj\aspectjrt.jar

   spring-framework-2.5.6\lib\aspectj\aspectjweaver

 

 

AOP xml

<aop:config>

         <aop:pointcut>                  切入点

         <aop:aspect>                    切面

                   <aop:before>            前置通知

                   <aop:after-returning>   后置通知

                   <aop:after-throwing>    异常通知

                   <aop:after>             最终通知

 

 

 

 

 

 

 

AOP注解

启用@AspectJ支持

<aop:aspectj-autoproxy/>

@Aspect

@Pointcut

 

任意公共方法的执行:

 

executionpublic * *..))

 

 

任何一个名字以“set”开始的方法的执行:

 

execution* set*..))

AccountService接口定义的任意方法的执行:

 

execution* com.xyz.service.AccountService.*..))

service包中定义的任意方法的执行:

 

execution* com.xyz.service.*.*..))

service包或其子包中定义的任意方法的执行:

 

execution* com.xyz.service..*.*..))

 

@Before                                                                   [Object arg]

@AfterReturning       pointcutreturning                     [Object  result]

@AfterThrowing                  pointcutthrowing  Exception             [Exception e]

@After

@Around 

分享到:
评论

相关推荐

    Spring AOP 概念理解及@AspectJ支持

    **Spring AOP 概念理解** Spring AOP(Aspect Oriented Programming,面向切面编程)是Spring框架的一个重要组成部分,它允许我们通过定义“切面”来模块化横切关注点,比如日志、事务管理、性能监控等。在传统的...

    Spring AOP面向方面编程原理:AOP概念

    ### Spring AOP面向方面编程原理:AOP概念详解 #### 一、引言 随着软件系统的日益复杂,传统的面向对象编程(OOP)逐渐暴露出难以应对某些横切关注点(cross-cutting concerns)的问题。为了解决这一挑战,面向方面编程...

    SPRING AOP 概念解析以及例子示范

    **SPRING AOP 概念解析以及例子示范** 在Java开发中,Spring框架因其强大的功能和灵活的设计,被广泛应用于企业级应用。其中,AOP(Aspect Oriented Programming,面向切面编程)是Spring框架的一个重要特性,它...

    spring AOP 概念

    ### Spring AOP 概念详解 #### 一、AOP基本概念 **Spring AOP** 是基于面向切面编程(Aspect Oriented Programming)的一种技术,主要用于处理横切关注点问题,比如日志记录、安全控制、事务管理等功能,这些功能...

    spring aop jar 包

    在Spring AOP中,主要涉及以下几个核心概念: 1. **切面(Aspect)**:切面是关注点的模块化,比如日志记录、事务管理、性能监控等。在Spring AOP中,切面由通知(Advice)和切点(Pointcut)定义。 2. **通知...

    SPRING AOP 概念解析以及例子示范.pdf

    下面我们将详细探讨Spring AOP的概念及其应用。 1. 通知(Advice): 通知定义了在特定时刻执行的代码片段。Spring AOP支持五种类型的Advice: - Before通知:在目标方法执行前执行。 - After-returning通知:在...

    Spring AOP学习资料(pdf)

    #### 一、Spring AOP 概念与背景 **Spring AOP**(面向切面编程)是Spring框架中的一个重要组成部分,它通过预定义的切入点来分离关注点,使得核心业务逻辑更加清晰,同时能够方便地管理诸如日志记录、性能统计、...

    SPRING AOP 概念解析以及例子示范.docx

    Spring AOP,全称Spring面向切面编程,是一种强大的设计模式,它允许程序员在不修改原有代码的情况下,插入额外的功能,比如日志记录、性能监控、安全控制等。AOP的核心概念包括通知(Advice)、连接点(Joinpoint)...

    简单spring aop 例子

    首先,我们要理解AOP的核心概念。AOP是一种编程范式,它允许开发者定义“切面”(Aspects),这些切面封装了特定的关注点,如日志、性能监控等。在运行时,这些关注点被编织到应用程序的主业务逻辑中,使得代码更...

    SPRING_AOP_概念解析以及例子示范.docx

    AOP的核心概念包括: 1. **通知(Advice)**:通知定义了切面在何时何地执行。在Spring中,有五种不同类型的Advice:`Before`(前置通知)、`After-Returning`(返回后通知)、`After-Throwing`(异常后通知)、`...

    springAOP中文文档

    ### Spring AOP 概念与实践 #### 一、AOP 概述 **面向切面编程 (Aspect-Oriented Programming, AOP)** 是一种编程范式,它旨在提高程序的模块化程度,通过分离横切关注点来解决传统面向对象编程中难以处理的问题。...

    Spring AOP完整例子

    首先,我们需要理解Spring AOP的基础概念。AOP的核心是切点(Pointcut),它定义了关注点在何处应用。在Spring中,我们通常使用表达式或者注解来定义切点。例如,我们可以使用`@Before`、`@After`、`@Around`、`@...

    spring aop依赖jar包

    现在,我们回到主题——"springaop依赖的jar包"。在Spring 2.5.6版本中,使用Spring AOP通常需要以下核心jar包: - `spring-aop.jar`:这是Spring AOP的核心库,包含了AOP相关的类和接口。 - `spring-beans.jar`:...

    进击的编程思想!带你学Spring AOP核心编程思想教程 新角度学面向切面编程

    何谓Spring AOP? Spring AOP 是基于 AOP 编程模式的一个框架,它的...课程从Spring AOP概念开始引入,通过Spring AOP代理和判断模式进行,宝库各种模式,不断的深入学习,相信会给同学们带来不一样的Spring AOP技术

    死磕Spring之AOP篇 - Spring AOP两种代理对象的拦截处理(csdn)————程序.pdf

    在深入理解 Spring AOP 的源码时,需要熟悉 Spring IoC 的工作原理,以及 AOP 相关的概念,如切点表达式、通知类型等。了解这些基础知识可以帮助我们更好地掌握 Spring AOP 的实现细节。在分析源码时,可以参考作者...

    Spring AOP实现机制

    AOP概念 - **切面(Aspect)**:切面是关注点的模块化,通常包括业务逻辑与横切关注点,如日志、安全检查等。 - **通知(Advice)**:通知是切面在特定连接点上执行的行为,如方法调用前、后、异常时等。 - **连接...

    spring aop 五个依赖jar

    它包含了一些基本的AOP概念,如Advisor、Pointcut和Proxy等,是连接不同AOP实现的桥梁。 这些库的组合使得Spring AOP能够有效地工作。使用Spring AOP,开发者可以定义切面,声明切入点(即关注点的定位),编写通知...

    反射实现 AOP 动态代理模式(Spring AOP 的实现原理)

    Spring框架中的AOP模块使用了动态代理来实现AOP概念。Spring AOP允许开发者定义切面,并在这些切面中指定拦截的方法。Spring AOP支持不同的代理策略,包括JDK动态代理和CGLIB代理。如果被代理的类没有实现接口,...

    spring AOP 引入jar包,spring IOC 引入Jar包

    1. **概念理解**:AOP 是一种编程范式,它将关注点分离,让通用的横切关注点(如日志、事务管理)与业务逻辑解耦。在 Spring 中,切面可以通过注解或 XML 配置定义。 2. **通知类型**:包括前置通知(Before)、...

Global site tag (gtag.js) - Google Analytics