相信学习Java语言的同窗都对这三个概念不太陌生。下面用spring的例子简单说明这三个概念。spring
IoC(Inversion of Control):控制反转。正常状况(控制未反转)下,若是serviceB要调用serviceA,那么serviceB须要实例化serviceA。而后控制反转状况下,spring框架把实例化serviceA的代码放到spring配置文件中,这就实现了控制的反转。编程
DI(denpendence inject):依赖注入。把被依赖的实例注入到依赖的实例中,spring实例化serviceA,而后把serviceA的实例注入到serviceB,这就是注入。而不是由serviceB实例化serviceA。框架
AOP(aspect oriented programing):面向切面编程。讲一个spring的应用。例如:经过spring事务的配置,可让spring管理事务,经过代理的方式实现事务的管理,而对业务代码没有侵入。学习