someserviceintroductioninterceptor.java

来自「加拿大达内科技有限公司配需java程序员的上课时的代码」· Java 代码 · 共 31 行

JAVA
31
字号
package aop6;

import org.aopalliance.intercept.MethodInvocation;
import org.springframework.aop.IntroductionInterceptor;

public class SomeServiceIntroductionInterceptor implements OtherService,IntroductionInterceptor{

	

	public Object invoke(MethodInvocation arg0) throws Throwable {
		// TODO Auto-generated method stub
		//找到那个方法是属于那个class对象的方法
		if(implementsInterface(arg0.getMethod().getDeclaringClass())){
			return arg0.getMethod().invoke(this, arg0.getArguments());
		}
		return arg0.proceed();//交给目标对象
	}

	public boolean implementsInterface(Class arg0) {
		// TODO Auto-generated method stub
		//判断某个class对象是否是某个class对象类型
		return arg0.isAssignableFrom(OtherService.class);
	}

	public void two() {
		// TODO Auto-generated method stub
		System.out.println("two()");
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?