Spring AOP通过动态代理机制实现,分为JDK Proxy和CGLIB两种方式。若目标对象实现接口,则使用JDK Proxy创建代理;若未实现接口,则采用CGLIB生成子类作为代理。代理对象与实现类功能相同,通过横向机制在不修改源代码的情况下增强功能,实现AOP的核心思想。