实验15 AOP
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
publeak;
}
for (int k = 0; k < ; k++) {
if (pd[k].getName().equalsIgnoreCase(())) {
mSet = pd[k].getWriteMethod();
// 利用Java的反射机制调用对象的某个set方法,并将值设置进去
(obj, value);
}
}
}
// 为对象增加前置或后置顾问
obj = (Object) (obj);
// 将对象放入beanMap中,其中key为id值,value为对象
((), obj);
}
} catch (Exception e) {
(());
}
}
/**
* 通过bean的id获取bean的对象.
*
* ***@parambeanName
* bean的id
* ***@return返回对应对象
*/
public Object getBean(String beanName) {
Object obj = (beanName);
returnobj;
}
/**
* 测试方法.
*
* ***@paramargs
*/
publicstaticvoid main(String[] args) {
BeanFactory factory = newBeanFactory();
("");
BusinessObjobj = (BusinessObj) ("businessObj");
();
}
}
;
;
;
;
/**
* AOP处理器.
* ***@authordinghui
* ***@Creation date: 2008-9-16
*/
publicclassAopHandlerimplementsInvocationHandler {
// 需要代理的目标对象
private Object target;
// 方法前置顾问
Advisor beforeAdvisor;
// 方法后置顾问
Advisor afterAdvisor;
/**
* 设置代理目标对象,并生成动态代理对象.
*
*
实验15AOP技术 来自淘豆网www.taodocs.com转载请标明出处.