在spring aop內可以使用spring api手動創建代理對象然後注入新的通知,完成後可以將代理對象向下傳播。使用如下代碼:
//創建新的代理工廠並且生產新的代理對象
ProxyFactory proxyFactory = new ProxyFactory(目標對象實例);
proxyFactory.setTarget(目標對象實例);// 設置代理對象
proxyFactory.setOpaque(true);//代理對象是否可以轉換成通知
proxyFactory.addAdvice(通知實例);// 註冊通知,可以註冊多個通知
Object proxy = proxyFactory.getProxy(proxyFactory.getClass().getClassLoader());//獲取代理對象
...//向下傳播新的代理對象