有参构造

    首先创建一个Person类,声明一个有参构造器,不声明无参构造

有参构造注入_Spring有参构造注入_java_02
public class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}
View Code

 

    然后配置beans.xml文件

      一共有三种方式

1:这种方法使用有参构造中的数据名称配置

    <bean id="Person" class="Person">
        <constructor-arg name="name" value="Person的有参构造"/>
        <constructor-arg name="age" value="18"/>
    </bean>

 

2:这种方法使用有参构造中的数据类型配置

    <bean id="Person" class="Person">
        <constructor-arg type="java.lang.String" value="Person的有参构造"/>
        <constructor-arg type="int" value="18"/>
    </bean>

 

3:这种方法使用下标索引配置 0代表第一个参数name   1代表第二个参数age

    <bean id="Person" class="Person">
        <constructor-arg index="0" value="Person的有参构造"/>
        <constructor-arg index="1" value="18"/>
    </bean>

 

  测试结果

有参构造注入_数据类型_03