DI Dependency Injection ,依赖注入
is a :是一个,继承。 has a:有一个,成员变量,依赖。 class B { private A a; //B类依赖A类 } 依赖:一个对象需要使用另一个对象 注入:通过setter方法进行另一个对象实例设置。 例如: class BookServiceImpl{ //之前开发:接口 = 实现类 (service和dao耦合) //private BookDao bookDao = new BookDaoImpl(); //spring之后 (解耦:service实现类使用dao接口,不知道具体的实现类) private BookDao bookDao; setter方法 } 模拟spring执行过程 创建service实例:BookService bookService = new BookServiceImpl() -->IoC <bean> 创建dao实例:BookDao bookDao = new BookDaoImple() -->IoC 将dao设置给service:bookService.setBookDao(bookDao); -->DI <property>