篇三:SpringMVC AOP JoinPoint
一、概览
AOP切面中连接点JoinPOint,会包含连接点的基本消息,通知所在的类、通知的方法名、通知方法的入参集合。
二、JoinPoint API
//获取连接点方法运行时的入参列表 java.lang.Onject[] getArgs() //获取连接点的方法签名对象 Signnature getSignnature() //获取连接点所在的目标对象(通知方法所在的类) java.lang.Object getTarget() //获取代理本身 java.lang.Object getThis()
三、具体应用
1、获取入参列表
public void intercept(JoinPoint point) throws Exception{ //获取入参列表 Object args = point.getArgs(); for(Object arg:args){ //获取的是入参的值,不是参数Key名 System.out.println(arg.toString()); } }
2、获取方法
public void intercept(JoinPoint point) throws Exception{ //获取Signnature MethodSignature signnature = (MethodSignature)point.getSignature(); //获取方法对象 Method method = signnature.getMethod(); //打印方法名
System.out.println("method:"+signnature.getMethod().getName()); }
3、获取类
public void intercept(JoinPoint point) throws Exception{ //获取类的Class对象 Class<?> target = point.getTarget().getClass(); //打印类名 System.out.println(target.getName()); //获取类的接口实现集合 for(Class<?> clazz : target.getInterfaces()){ resolveDataSource(clazz, signnature.getMethod()); } resolveDataSource(target, signnature.getMethod()); }

浙公网安备 33010602011771号