目录

一,配置一下环境

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来管理项目

android java代码注入js javabean注入_java

2,在pom.xml中导入spring的坐标

android java代码注入js javabean注入_容器_02

刷新项目,在依赖中出现spring-context则成功导入。


android java代码注入js javabean注入_spring_03

3,创建dao与service的接口和实现类


android java代码注入js javabean注入_容器_04


android java代码注入js javabean注入_容器_05

4,在resources下创建spring config文件

android java代码注入js javabean注入_容器_06

5,在spring的配置文件中配置dao和service这两个bean

android java代码注入js javabean注入_android java代码注入js_07

配上后就能在测试代码中从spring容器中获取bean的实例了就不用new了。

在测试代码中输入以下代码就可以在spring容器中获取UserService实例


android java代码注入js javabean注入_android java代码注入js_08

二,在spring容器中将userDao注入到userService中

1,Set方法(常用)

(1)在userServiceImpl中添加set方法用于引用userDao

android java代码注入js javabean注入_spring_09

在userServiceImpl中写set方法,设置usedao,配置好spring config后,就不用在save()中从spring容器获取userDao实例了。

(2)在spring容器中配置

android java代码注入js javabean注入_数据类型_10

这样userDaoImpl的实例就会被spring容器设置到userServiceImpl中。

(3)测试结果

android java代码注入js javabean注入_spring_11

在测试类中从spring中获取userServiceImpl实例,spring将userDao注入到userService后,userServiceImpl实例能成功调用userDao.save()方法.

2,构造方法

(1)在userServiceImpl中添加有参构造

android java代码注入js javabean注入_java_12

(2)在spring配置文件中配置构造方法的注入代码

android java代码注入js javabean注入_容器_13

(3)测试


android java代码注入js javabean注入_数据类型_14

能反映注入成功。

三,注入的三大类型,

普通数据类型

引用数据类型

集合数据类型

上述例子是引用数据类型

1,普通数据类型注入,

在UserServiceImpl的属性中注入名字和年龄两个普通数据类型

(1)set注入

 

android java代码注入js javabean注入_java_15

Spring中配置

android java代码注入js javabean注入_spring_16

测试

android java代码注入js javabean注入_android java代码注入js_17

(2)构造方法注入

android java代码注入js javabean注入_spring_18

Spring中配置

android java代码注入js javabean注入_spring_19

测试

android java代码注入js javabean注入_数据类型_20

2,集合数据类型注入

(1)set注入

首先配置三个集合list map properties(map里有引用类型)

android java代码注入js javabean注入_spring_21

Map里的引用类型User

android java代码注入js javabean注入_容器_22


spring中的配置注入信息,引用类型的信息在后面加入

android java代码注入js javabean注入_数据类型_23

测试

android java代码注入js javabean注入_android java代码注入js_24

android java代码注入js javabean注入_容器_25

(2)构造注入

userServiceImpl中配置

android java代码注入js javabean注入_spring_26

spring中的配置注入信息

android java代码注入js javabean注入_java_27

测试

android java代码注入js javabean注入_android java代码注入js_28

四,总结

spring容器的这种注入方法有set和构造两种方式,set常用。我感受到有解耦合的感觉,只需要对容器进行维护,不用对代码调整。注意细节部分,property和constructor中的name属性不一样,一个是方法名的一部分,另一个是参数名。注意集合的格式,还有代码部分最好上手一遍,不然就容易弄混。