📄 somemethodinterceptor.java
字号:
package one;
/**
* 这是一个通知类,它实现了MethodInterceptor接口,可以在方法调用的前后进行处理
* 可以改变返回值,处理流。
*/
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
public class SomeMethodInterceptor implements MethodInterceptor{
private long date;//阀值,判断方法的执行时间是否超过配置的时间。
public Object invoke(MethodInvocation arg0) throws Throwable {
// TODO Auto-generated method stub
long startTime = System.currentTimeMillis();//系统当前时间
Object rst = arg0.proceed();//调用目标方法
long endTime = System.currentTimeMillis();
if((endTime-startTime)>date){
System.out.println("waring! timeout!");
}else{
System.out.println("execute time "+(endTime-startTime));
}
return rst;
}
public long getDate() {
return date;
}
public void setDate(long date) {
this.date = date;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -