spring学习笔记_03_入门案例:DI

目录

DI定义:

项目驱动:

classes:

dao和service配置 xml文件

使用api测试

结果:


DI定义:

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
创建dao实例:     BookDao bookDao = new BookDaoImple()              -->IoC
将dao设置给service:bookService.setBookDao(bookDao);                   -->DI  

DI 一句话:
UserService里有个 UserDao属性,并有个setUserDao(userDao)方法,通过DIUserServcie注入UserDao的实现

图解:

spring学习笔记_03_入门案例:DI_第1张图片

项目驱动:

classes:

spring学习笔记_03_入门案例:DI_第2张图片

spring学习笔记_03_入门案例:DI_第3张图片

spring学习笔记_03_入门案例:DI_第4张图片

spring学习笔记_03_入门案例:DI_第5张图片

dao和service配置 xml文件

spring学习笔记_03_入门案例:DI_第6张图片

使用api测试

spring学习笔记_03_入门案例:DI_第7张图片

结果:

输出:add user

 

 

你可能感兴趣的:(spring学习笔记)