简单的JDK动态代理模式
1.项目分层图
2.Employer的代码:
package com.hhwy.service
public interface IEmployer{
void addEmployer(); //在接口中定义添加雇员方法
}
3.EmployerImp的代码:
package com.hhwy.service;
public class EmployerImpl implements IEmployer{
@Override
public void addEmployer(){
System.out.println("加入北京有限公司就从现在做起!");
}
}
4.MyInvocation的代码:
package com.hhwy.service;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
public class MyInvocation implements InvocationHandler{
private Object target;
@Override
public Object invoke(Object proxy, Method method, Object[] args)throws Throwable{
System.out.println("对象执行之前的代码逻辑");
Object resultObject=method.invoke(target, args);
System.out.println("对象执行之后的代码逻辑");
return resultObject;
}
public MyInvocation(Object target){
this.target=target;
}
}
5.Test的方法: