===============================
Spring IoC依赖注入之Set方法注入
===============================
1 Set方法注入
在bean标签中通过配置property,指定属性名(name)和值(value),即Set方法注入。
...
... | |
| |
| |
public class Student { | |
... v |
private String number; |
... | |
V v
public void setNumber(String number) {
this.number = number;
}
...
}
2 注入不同类型的属性
XML文件中的value都是字符串,对象属性的类型却不一定是字符串。
2.1 简单类型和字符串类型的属性
将字符串转换为对应属性的类型,前提是这种类型转换必须是成功的。
2.2 日期(Date)类型的属性
2.2.1 通过property的ref引用Spring容器中对应类型的对象
...
... __________________________|
|
| // +1900=2022
| // +1=2
|
|
|
public class Student { |
... __________________________|
|
private Date enrollment;
...
}
2.2.2 通过property的bean子标签描述对象型属性的内部属性
... _______________
| |
|
| // +1900=2022
| // +1=2
|
|
|
... |
|
|
public class Student { |
... __________________________________|
|
private Date enrollment;
...
}
2.3 自定义类型的属性
2.3.1 通过property的ref引用Spring容器中对应类型的对象
...
... _______________________|
|
|
|
|
public class Student { |
... _____________________________________|
|
private Subject subject;
...
}
2.3.2 通过property的bean子标签描述对象型属性的内部属性
...
|
|
|
... |
|
|
public class Student { |
... __________________________________|
|
private Subject subject;
...
}
2.4 集合类型的属性
2.4.1 基本类型或字符串列表
public class Student {
...
private List hobbies;
...
}
...
...
或
...
旅游
电影
足球
...
2.4.2 类对象列表
public class Student {
...
private List courses;
...
}
...
...
或
...
...
2.4.3 集合
与列表的情况相同,把换成即可。
2.4.4 基本类型/字符串->基本类型/字符串映射
public class Student {
...
private Map planA;
...
}
...
...
2.4.5 基本类型/字符串->类对象映射
public class Student {
...
private Map planB;
...
}
...
...
或
...
...
2.4.6 类对象->类对象映射
public class Student {
...
private Map planC;
...
}
...
...
或
...
...
2.5 Properties类型的属性
Properties继承自HashTable,HashTable继承自Map。
对Properties类型属性的注入配置与映射相同。
public class Student {
...
private Properties planD;
...
}
...
...
如果其中键和值都是字符串类型,也可以写成下面的形式:
...
Java语言
Java Web
SSM
...
例程:SpringIoC