AspectJ实例

AspectJ是java Aop编译时增强的代表。

几个专业名词:

aspect 切面  解释:service包下面的所有类的所有get**()方法,算是一个切面

joinpoint 连接点 解释:在方法的开始,或方法的结束,或方法的开始和结束可以插入增强处理(只是说可以插入);

advice 增强处理 解释:在方法的开始,或方法的结束, 或方法的开始和结束插入的代码叫做增强处理;

pointcut 切入点 解释:在方法的开始,或方法的结束,或方法的开始和结束插入了增强处理的连接点被称为切入点,就是连接点插入了增强处理就变成了切入点;

aop代理方法 包括 目标方法和增强处理

增强处理类

public aspect TxAdvice  
{
	before():execution(* com.sharp.service.*.*(..))//切入点
	{
		System.out.println("author check");//增强处理
	}
	Object around():execution(* com.sharp.service.*.*(..))//切入点
	{
		System.out.println("tx is open ");//增强处理
		Object obj = proceed();//回调目标方法
		System.out.println("tx is close ");//增强处理
		return obj;//返回目标方法的返回值
	}
	after():execution(* com.sharp.service.*.*(..))//切入点
	{
		System.out.println(" tx advice log is saving.1..");//增强处理
	}
	after():execution(* com.sharp.service.*.*(..))//切入点
	{
		System.out.println(" tx advice log is saving.2..");//增强处理
	}
}

目标类:

package com.sharp.service;

public class Hello
{
	public void say(){
		//连接点(这里可以插入增强处理)
		System.out.println("hello is saying~~~~~~");//目标方法
		//连接点(这里可以插入增强处理)
	}
	public void cry(){
		//连接点(这里可以插入增强处理)
		System.out.println("hello is crying~~~~~~");//目标方法
		//连接点(这里可以插入增强处理)
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值