spring5:IOC操作bean管理(有参构造注入属性)

4、第二种注入方式:使用有参数构造进行注入 (1)创建类,定义属性,创建属性对应有参数构造方法

public class Orders {
    private String oname;
    private String adress;

    public Orders(String oname, String adress) {
        this.oname = oname;
        this.adress = adress;
    }

    public void test(){
        System.out.println("test......");
    }

    @Override
    public String toString() {
        return "Orders{" +
                "oname=" + oname +  +
                ", adress=" + adress +  +
                };
    }
}

(2)在spring配置文件中进行配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--配置user对象创建-->
    <bean id="user" class="com.gsafety.spring5.User"></bean>

    <!--set注入属性-->
    <bean id="book" class="com.gsafety.spring5.Book">
        <property name="bautor" value="金庸"></property>
        <property name="bname" value="天龙八部"></property>
    </bean>

    <!--有参构造注入属性-->
    <bean id="orders" class="com.gsafety.spring5.Orders">
       <constructor-arg name="oname" value="名称"></constructor-arg>
       <constructor-arg name="adress" value="地址"></constructor-arg>
    </bean>

</beans>

测试

@Test public void testConstrut(){ //1、加载spring配置文件 ApplicationContext applicationContext=new ClassPathXmlApplicationContext("bean1.xml"); //2、获取配置创建的对象 Orders orders = applicationContext.getBean("orders", Orders.class); System.out.println(orders); orders.test(); }

输出:

Orders{oname=名称, adress=地址} test......

经验分享 程序员 微信小程序 职场和发展