`
默翁1
  • 浏览: 26898 次
社区版块
存档分类
最新评论

Around增强处理

 
阅读更多

Around增强处理是一种功能比较强大的增强处理,近似于Before和AfterReturning增强处理的总和.Aound增强处理既可以在执行目标方法之前织入增强工作,也可以在执行目标之后织入增强工作

当定义一个Around增强处理方法时,该方法的第一个参数必须是ProceedingjoinPoint类型(至少包含一个形参,在增强的方法体内,调用ProceedingjoinPoint的proceed()方法才会执行目标方法,如果程序没有调用这个方法,则目标方法不会被执行

public interface IUserDao {
	public void save();
	public void update();
	public void delete();
}
@Repository
public class UserDaoIm implements IUserDao{

	public void save() {
		System.out.println("保存用户信息");
	}

	public void update() {
		System.out.println("更新用户信息");
	}

	public void delete() {
		System.out.println("删除用户信息");
	}
	
}
 

 

@Aspect
public class Advice {
	@Around("execution(* save(..))")
	public void adviceMethod(ProceedingJoinPoint point) throws Throwable{
		System.out.println("开始事务提交");
		point.proceed();	
	}
}

 

<description>SpringIOC-初始 </description>
	<aop:aspectj-autoproxy></aop:aspectj-autoproxy>
	<context:component-scan base-package="annotation.**"></context:component-scan>
	<bean id="advice" class="annotation.Advice"></bean>
<!-- 	<bean class="org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator"></bean> -->

 

public static void main(String[] args) {
		ApplicationContext context=new ClassPathXmlApplicationContext("annotation/beam.xml");
		//获取代理lei
		IUserDao userDao=(IUserDao)context.getBean("userDaoIm");
		userDao.save();
	}

 

 

0
0
分享到:
评论

相关推荐

    在spring中如何使用aop

    6. **Around增强处理**: `@Around`是最强大的注解,它允许在目标方法前后添加自定义逻辑,并控制目标方法的执行。`ProceedingJoinPoint`参数是必须的,用于调用`proceed()`方法来执行目标方法: ```java @Around...

    what goes around stonebraker

    然而,正如文章标题所暗示的“what goes around stonebraker”,NewSQL 的发展过程中也出现了一些历史上的问题重演现象。 #### 从历史中学到的教训 1. **复杂性问题:** 例如,早期的 CODASYL 模型因其复杂性而...

    spring AOP的Around增强实现方法分析

    Spring AOP 的 Around 增强实现方法分析 Spring AOP (Aspect-Oriented Programming) 是一种面向切面编程技术,主要用于处理横切关注点问题。在 Spring AOP 中,Around 增强是最强大的增强类型之一,能够在目标方法...

    Spring AOP访问目标方法的参数操作示例

    Around增强处理是AOP中的一种重要概念,它可以在目标方法执行之前、执行之后或抛出异常时执行一些额外的处理。在我们的示例中,Around增强处理用于访问目标方法的参数。我们可以看到,`processTx`方法使用`@Around`...

    Spring Aop实例(AOP 如此简单)@Aspect、@Around 注解方式配置

    因此,本实例展示了 Spring AOP 的强大功能,即可以在不修改目标方法的代码的情况下,增加新的功能,从而实现对目标方法的增强和修改。 在 Spring AOP 中,还有其他类型的 Advice,例如 Before Advice、After ...

    PyPI 官网下载 | django-write-around-cache-0.2.0.tar.gz

    此库旨在增强Django的缓存功能,特别是在处理读写操作时提供更好的性能优化。"Write-around"缓存策略是一种设计模式,它在主存储器无法满足高速访问需求时,允许数据绕过主存储器直接写入更快的存储层,从而提高数据...

    Spring AOP 基于注解详解及实例代码

    System.out.println("Around增强处理执行完毕"); return result; } ``` 在增强处理方法中,我们可以通过`JoinPoint`或`ProceedingJoinPoint`来获取目标方法的相关信息,例如参数、签名、目标对象和代理对象。例如...

    java中的0 can‘t find referenced pointcut runTim

    Advice(通知、切面): 某个连接点所采用的处理逻辑,也就是向连接点注入的代码, AOP在特定的切入点上执行的增强处理。 @Before: 标识一个前置增强方法,相当于BeforeAdvice的功能. @Around: 环绕增强,相当于...

    Javascript aop(面向切面编程)之around(环绕)分析

    在这个例子中,`around` 方法接收三个参数:要增强的对象 `obj`,对象上的方法名 `'foo'`,以及一个顾问函数 `advice`。顾问函数接收原始函数作为参数,并返回一个新的函数,这个新函数在调用原始函数前后执行自定义...

    spring boot aop 统一处理日志

    在这个增强后的`logAround`方法中,我们使用`@Around`通知,因为它允许我们在方法执行前后分别进行操作,并能捕获任何抛出的异常。我们记录了方法开始的时间,然后调用`proceed()`来执行原始方法,最后计算并记录...

    Around-View-Monitor-Project

    3. **图像增强与去噪**:为了提供清晰的视觉体验,项目可能包含图像增强技术,如对比度提升、亮度调整等,以及降噪算法,如中值滤波或快速傅里叶变换(FFT)去噪,以消除环境因素导致的图像质量下降。 4. **实时...

    Moves a form around the screen just by dragging it.

    标题中的“Moves a form around the screen just by dragging it”指的是在计算机编程中,特别是使用Windows Forms或类似桌面应用开发框架时的一种功能。这个功能允许用户通过鼠标拖动窗体(form)来改变其在屏幕上...

    WorkAround-Explorer

    "WorkAround-Explorer"可能包含了Promise的polyfill或async/await的处理方法。 7. **ES6+语法转换**:为了支持那些不完全支持ES6及以上版本语法的浏览器,项目可能集成了Babel等工具,将新语法转换为更兼容的ES5...

    必修一(Unit2 English around the world the 7th period).doc

    本节课是必修一Unit2“English around the world”的第七个阶段,主要目的是进行总结、学习技巧和项目实践。这个阶段的核心在于巩固和总结,包括词汇短语的复习、全球英语概览的回顾以及语法要点的梳理。在教学过程...

    The C++14 wrapper around sqlite library.zip

    C++14在其前一版本C++11的基础上,增强了lambda表达式、通用引用、变长模板参数、类型推断等特性。这些特性使得我们可以编写更加简洁、灵活且易读的代码,特别是对于复杂库的封装工作,它们极大地提高了代码的可维护...

    English around the world-Reading学案(1).doc

    本节课的主题是“English around the world”,主要探讨的是英语在全球的分布和其发展变化。课程内容包括NSE高中课本第一单元的Pre-reading, Reading, Comprehension部分,涉及英语的历史演变和不同国家的英语差异。...

    SpringBoot控制器统一的响应体加密与请求体解密的注解处理方式

    通过这种方式,我们可以在SpringBoot应用中实现控制器响应体的统一加密和请求体的解密,同时支持多种加密算法,从而增强系统的安全性。在项目`Licoy-encrypt-body-spring-boot-starter-ffe8b7a`中,应该包含了具体的...

    Spring AOP之5种增强方法应用范例

    本篇文章将深入探讨Spring AOP中的5种增强方法,以及如何在实际应用中使用它们。我们将不涉及链接,而是直接在这里详细讲解这些概念。 1. **前置通知(Before Advice)**: 前置通知在目标方法执行之前运行,但不...

    Spring AOP之增强

    Spring AOP的增强主要包括前置增强(Before)、后置增强(After Returning)、异常增强(After Throwing)、环绕增强(Around)和最终增强(After)。这些增强可以在方法执行的特定时刻介入,执行额外的操作。 1. ...

Global site tag (gtag.js) - Google Analytics