什么是di依赖注入?
把有依赖关系的类放到容器中，解析出这些类的实例，就是依赖注入。目的是实现类的解耦。  
实例：class a中用到了class b的对象b，一般情况下，需要在a的代码中显式的new一个b的对象。采用依赖注入技术之后，a的代码只需要定义一个私有的b对象，不需要直接new来获得这个对象，而是通过相关的容器控制程序来将b对象在外部new出来并注入到a类里的引用中。这样做有什么好处呢？
在软件业，aop为aspect oriented programming的缩写，意为：面向切面编程，通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。aop是oop的延续，是软件开发中的一个热点，也是spring框架中的一个重要内容，是函数式编程的一种衍生范型。利用aop可以对业务逻辑的各个部分进行隔离，从而使得业务逻辑各部分之间的耦合度降低，提高程序的可重用性，同时提高了开发的效率。