目录
一,配置一下环境
1,首先创建一个maven来管理项目
2,在pom.xml中导入spring的坐标
3,创建dao与service的接口和实现类
4,在resources下创建spring config文件
5,在spring的配置文件中配置dao和service这两个bean
二,在spring容器中将userDao注入到userService中
1,Set方法(常用)
2,构造方法
三,注入的三大类型,
1,普通数据类型注入,
2,集合数据类型注入
四,总结
一,配置一下环境
1,首先创建一个maven来管理项目
2,在pom.xml中导入spring的坐标
刷新项目,在依赖中出现spring-context则成功导入。
3,创建dao与service的接口和实现类
4,在resources下创建spring config文件
5,在spring的配置文件中配置dao和service这两个bean
配上后就能在测试代码中从spring容器中获取bean的实例了就不用new了。
在测试代码中输入以下代码就可以在spring容器中获取UserService实例
二,在spring容器中将userDao注入到userService中
1,Set方法(常用)
(1)在userServiceImpl中添加set方法用于引用userDao
在userServiceImpl中写set方法,设置usedao,配置好spring config后,就不用在save()中从spring容器获取userDao实例了。
(2)在spring容器中配置
这样userDaoImpl的实例就会被spring容器设置到userServiceImpl中。
(3)测试结果
在测试类中从spring中获取userServiceImpl实例,spring将userDao注入到userService后,userServiceImpl实例能成功调用userDao.save()方法.
2,构造方法
(1)在userServiceImpl中添加有参构造
(2)在spring配置文件中配置构造方法的注入代码
(3)测试
能反映注入成功。
三,注入的三大类型,
普通数据类型
引用数据类型
集合数据类型
上述例子是引用数据类型
1,普通数据类型注入,
在UserServiceImpl的属性中注入名字和年龄两个普通数据类型
(1)set注入
Spring中配置
测试
(2)构造方法注入
Spring中配置
测试
2,集合数据类型注入
(1)set注入
首先配置三个集合list map properties(map里有引用类型)
Map里的引用类型User
spring中的配置注入信息,引用类型的信息在后面加入
测试
(2)构造注入
userServiceImpl中配置
spring中的配置注入信息
测试
四,总结
spring容器的这种注入方法有set和构造两种方式,set常用。我感受到有解耦合的感觉,只需要对容器进行维护,不用对代码调整。注意细节部分,property和constructor中的name属性不一样,一个是方法名的一部分,另一个是参数名。注意集合的格式,还有代码部分最好上手一遍,不然就容易弄混。