七、装配bean--通过构造函数给bean注入值
一、如果有Employee类:
private String name; private int age; public Employee(String name, int age) { this.name=name; this.age=age; }
则在xml中配置如下
<bean id="employee" class="com.beans.Employee"> <constructor-arg index="0" type="java.lang.String" value="蔡文姬"/> <constructor-arg index="1" type="int" value="27" /> </bean>
①配置文件的type,如果是基本数据类型则直接写,否则写全路径
②如果只配置了一个参数,则寻找那个一个参数的构造函数,以此类推,找不到则会报错
set注入的缺点是无法清晰表达哪些属性是必须的,哪些是可选的,构造注入的优势是通过构造强制依赖关系,不可能实例化不完全或者无法使用的bean