构造函数的依赖注入方法:

    • 单个类作为参数构造函数的注入 ```xml
    - 多个类作为参数构造函数的注入xml - 多参构造函数的注入xml 案例代码:<br />Person.javajava package com.baklib.custom; public class Person { private String name; private int age; public Person() {} public Person(String name, int age) { this.name=name; this.age=age; } public String getName() { return name; } public int getAge() { return age; } } Car.javajava package com.baklib.custom; public class Car { private String name; private double price; public Car() {} public Car(String name, double price) { this.name = name; this.price = price; } public String getName() { return name; } public double getPrice() { return price; } } Action.javajava package com.baklib.custom; public class Action { private Person person; private Car car; public Action(Person person, Car car) { this.person = person; this.car = car; } public void buyCar() { System.out.println(person.getName()+”今年”+person.getAge()+”岁,花了” +car.getPrice()+”元买了”+car.getName()); } } MainApp.javajava package com.baklib.custom; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class MainApp { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext(“Beans.xml”); Action action = (Action) context.getBean(“action”); action.buyCar(); } } 配置文件 Beans.xmlxml <?xml version=”1.0” encoding=”UTF-8”?>
    1. <bean id="car" class="com.baklib.custom.Car">
    2. <constructor-arg index="0" value="小轿车" />
    3. <constructor-arg index="1" value="100000" />
    4. </bean>
    5. <bean id="person" class="com.baklib.custom.Person">
    6. <constructor-arg type="java.lang.String" value="张三" />
    7. <constructor-arg type="int" value="20" />
    8. </bean>

    1. 编写完以上代码,就可以运行这个程序,运行结束后,可以在控制台看到下面的信息

    张三今年20岁,花了100000.0元买了小轿车 ```