IoC(Inversion of Control):控制反转,也叫依赖注入。spring的IoC功能将对象的一系列管理操作都转移给了spring的容器来进行操作,如对象的新建和销毁。控制转移即反转。IoC利用Java的反射机制来实现依赖注入,在实例化时通过反射调用类中的set方法进行注入。
AOP(Aspect Oriented Programming):面向切面编程。看名字就知道是面向对象编程的补充和完善。实现AOP的技术主要有两类,一类是动态代理技术,一类是静态织入的方式。spring的AOP使用Java中的动态代理实现,其核心的两个类是InvocationHandler和Proxy。