@Service標註將這個類在掃描時註冊到Spring容器管理
@Aspect是將該類聲明爲切面類
@component把該類實例化放入到spring容器中,
@五種增強("execution(public 返回值 地址.*(..))")
AOP實現的大致流程即爲
將目標方法的類通過@Service註冊到Spring容器管理,以便之後生成代理對象
通過@Aspect聲明切面類,然後@component放入spring容器中
通過@五種增強("execution(public 返回值 地址.*(..))")建立切面
在ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("app.xml");
代碼執行時創建IOC容器,@Service標註的類中方法與@Aspect@component標註的切面類中切入點表達式匹配,默認情況下IOC自動爲@Service標註的類創建代理類並創建相應的代理對象,之後通過applicationContext.getBean(class);得到該類即可操作。