AOP零散知识点个人理解
2019-08-19 本文已影响0人
桌面很乱
切入点意思是要从这些方法入手进行加强。
通知里写了很多方法,这些方法可以在切面配置中配置为前置、后置、异常、最终通知。
如果配置为环绕通知,意思是要自己手动地在通知里编写环绕通知,就像动态代理那样,需要用到ProceedingJoinPoint接口
public Object transactionAround(ProceedingJoinPoint pjp) {
//定义返回值
Object rtValue = null;
try {
//获取方法执行所需的参数
Object[] args = pjp.getArgs();
//前置通知:开启事务
beginTransaction();
//执行方法
rtValue = pjp.proceed(args);
//后置通知:提交事务
commit();
}catch(Throwable e) {
//异常通知:回滚事务
rollback();
e.printStackTrace();
}finally {
//最终通知:释放资源
release();
}
return rtValue;
}