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

Spring AOP应用总结--AfterReturningAdvice

阅读更多

Spring AOP可以方便地监控方法执行情况,可以用来记录系统日志。以下是通过after通知来记录指定方法的执行情况。

通知类:SysLogAfterAdvice

java 代码
  1. public class SysLogAfterAdvice implements AfterReturningAdvice {   
  2. public void afterReturning(Object arg0, Method arg1, Object[] arg2, Object arg3) throws Throwable {   
  3.     //实现代码   
  4.     }   
  5. }  

在该类中记录需要监听的方法执行情况,形成系统日志。

关键在于配置文件。

xml 代码
  1.    <bean id="id1_Service" class="org.springframework.aop.framework.ProxyFactoryBean">  
  2.        <property name="target">  
  3.            <ref local="beanTarge" />  
  4.        property>  
  5.         <property name="interceptorNames">  
  6.             <list>  
  7.             <value>logAfterAdvisorvalue>  
  8.         list>  
  9.         property>           
  10.    bean>  
  11. <bean id="logAfterAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">  
  12.      <property name="advice"><ref local="sysLogAfterAdvice" />property>  
  13.      <property name="pattern">  
  14.          <value>.*do.*value>  
  15.      property>  
  16.    bean>  
  17.     <bean id ="sysLogAfterAdvice" class="com.jiuqi.mcasv2.logic.sysmng.SysLogAfterAdvice" >  
  18.         <property name="logMngBO"><ref bean="logMngBO"/>property>  
  19.     bean>   

id1_Service中属性interceptorNames指定进行监听器列表,其次序是有影响的。

监听器logAfterAdvisor将通知及切入点组合在一起,指明对以do开头的方法发送通知sysLogAfterAdvice进行拦截处理。

其它类型的通知,配置方式同上,只要改变相应通知类就行了。其它可用通知类型包括before/around/after throwing等类型。

around通知是万金油型,对方法的执行前后情况都可拦截,通用。

但是建议用最适合的通知类型,而不是任何情况都用around通知,虽然它也能解决。

分享到:
评论

相关推荐

    spring-aop-jar

    该jar文件包含了Spring AOP的核心类和接口,如`org.springframework.aop.*`包下的`AspectJExpressionPointcut`、`MethodBeforeAdvice`、`AfterReturningAdvice`等。 3. spring-aspects-4.1.6.RELEASE.jar:这个jar...

    小马哥讲 Spring AOP 编程思想 - API 线索图.pdf

    在讨论Spring AOP(面向切面编程)时,首先需要理解几个核心概念。Spring AOP 是Spring框架提供的一个功能模块,它允许开发者将横切关注点(cross-cutting concerns)从业务逻辑中解耦出来,通过在方法调用前后进行...

    应用Spring AOP(五)-------XML配置方式

    本篇将深入探讨如何通过XML配置来实现Spring AOP的应用。 一、Spring AOP基本概念 在Spring AOP中,切面(Aspect)是关注点的模块化,它包含了通知(Advice)和切点(Pointcut)。通知是在特定连接点(Join Point)...

    springAop的配置实现

    Spring AOP(Aspect Oriented Programming,面向切面编程)是Spring框架的重要组成部分,它允许我们通过分离关注点来简化应用程序的开发。在传统的面向对象编程中,业务逻辑与日志记录、事务管理、性能监控等横切...

    应用Spring AOP(二)-------通过Advisor指定切入点

    在本篇博文中,我们将深入探讨Spring AOP(面向切面编程)的使用,特别是如何通过Advisor指定切入点。Spring AOP是Spring框架的核心...通过这些测试代码,我们可以更直观地理解和学习如何在实际应用中使用Spring AOP。

    Spring_ch01-2.zip_springAOP

    本资源包"Spring_ch01-2.zip_springAOP"专注于Spring的面向切面编程(Aspect-Oriented Programming,简称AOP)特性。AOP允许我们在程序设计时将关注点分离,例如日志、事务管理等,使其独立于核心业务逻辑,从而提高...

    spring aop 实现源代码--xml and annotation(带lib包)

    在Spring1.2或之前的版本中,实现AOP的传统方式就是通过实现Spring的AOP API来定义Advice,并设置代理对象。Spring根据Adivce加入到业务流程的时机的不同,提供了四种不同的Advice:Before Advice、After Advice、...

    springAOP 4个jar包

    比如,`org.aopalliance.intercept.MethodInterceptor`接口定义了拦截器的接口,Spring AOP的`MethodBeforeAdvice`、`AfterReturningAdvice`等通知类型都实现了这个接口。 了解这些jar包的作用后,我们可以看到...

    Spring AOP学习资料(pdf)

    ### Spring AOP 学习资料知识点总结 #### 一、Spring AOP 概念与背景 **Spring AOP**(面向切面编程)是Spring框架中的一个重要组成部分,它通过预定义的切入点来分离关注点,使得核心业务逻辑更加清晰,同时能够...

    用xml配置的方式进行SpringAOP开发

    3. **启用AOP代理**:在Spring配置文件中,我们需要启用AOP代理来应用Advisor。可以使用`&lt;aop:config&gt;`或`&lt;aop:aspectj-autoproxy&gt;`标签来实现: ```xml &lt;aop:config&gt; &lt;aop:advisor id="loggingAdviceRef" advice-...

    spring aop的两种配置方式.docx

    总结来说,Spring AOP的XML配置方式更传统,适合于早期的Spring应用,而注解配置则更为现代,提供了更简洁的代码结构和更好的可读性。开发者可以根据项目需求和个人偏好选择适合的配置方式。在实际应用中,结合使用...

    spring对AOP的支持(使用Spring的配置文件来演示)

    2. **基于注解的AOP**:Spring 2.5引入了基于注解的AOP,可以将切面和通知直接应用到方法上,无需XML配置。 **配置文件示例** 在Spring的XML配置文件中,我们可以这样定义一个切面: ```xml &lt;aop:config&gt; &lt;!-- ...

    SpringAOP

    总结来说,Spring AOP提供了一种优雅的方式来管理横切关注点,通过面向切面的编程模式,我们可以更有效地组织和分离关注点,从而使代码更符合面向对象的设计原则。无论是事务管理、日志记录还是其他基础设施服务,都...

    spring-aop源码

    总结,Spring AOP源码的探索有助于开发者深入理解面向切面编程的实现机制,提升问题解决能力,从而更好地利用AOP技术优化和维护应用程序。通过实践与学习,我们可以更好地驾驭这个强大的工具,提高代码的可维护性和...

    spring-aop源码解读

    Spring AOP(面向切面编程)是Spring框架的重要组成部分,它允许程序员在不修改源代码的情况下,通过添加额外的行为(即“切面”)来增强应用程序的功能。在Spring AOP中,主要有三个核心概念:Advice、Pointcut和...

    Spring AOP - Advice

    Spring中,我们可以使用`org.springframework.aop.AfterReturningAdvice`接口来实现。例如: ```java public class AfterReturningAdviceImpl implements AfterReturningAdvice { public void afterReturning...

    使用Spring配置文件实现AOP

    在Spring框架中,面向切面编程(Aspect Oriented Programming,简称AOP)是一种强大的设计模式,它允许我们...通过深入理解和实践,我们可以更好地利用Spring AOP来优化我们的应用程序,提高代码的可读性和可维护性。

    Spring_AOP_学习小结 Spring_AOP_学习小结 Spring_AOP_学习小结

    总结,Spring AOP提供了一种优雅的方式,让我们能够分离关注点,实现代码的模块化,提高可维护性和复用性。理解并熟练运用这些概念和机制,可以极大地提升我们的开发效率和代码质量。通过学习和实践,你可以更好地在...

    spring AOP 概念

    ### Spring AOP 概念详解 #### 一、AOP基本概念 **Spring AOP** 是基于面向切面编程(Aspect Oriented Programming)的一种...理解和掌握这些核心概念,有助于开发者更好地利用 Spring AOP 来优化和维护应用程序。

    Spring  AOP实现方法大全

    总结来说,Spring AOP通过四种类型的Advice提供了灵活的横切关注点实现,使得我们可以将关注点从核心业务逻辑中分离出来,从而实现代码的解耦和复用。无论是使用传统的API还是现代的注解方式,Spring AOP都能帮助...

Global site tag (gtag.js) - Google Analytics