spring复合属性名称

复合属性名称用于属性已经存在实例的时候, 可以对该实例注入属性

但是前提是该属性不能为null, 否则会抛出NullPointerException异常

boss.java

package test_one;

public class boss {
    private String name;
    private no no_one=new no();  //已实例化的情况可以对no_one实例的属性注入。 no_one非实例化情况会报错

    public String getName() {
        return name;
    }

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

    public no getNo_one() {
        return no_one;
    }

    public void setNo_one(no no_one) {
        this.no_one = no_one;
    }

}

no.java

package test_one;

public class no {
    private String name;
    private String height;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name=name;
    }
    public String getHeight() {
        return height;
    }
    public void setHeight(String height) {
        this.height = height;
    }
}

bean.xml

<bean id="boss" class="test_one.boss" >    
    <property name="name" value="斌斌"/>
    <property name="no_one.name" value="明明"/>
    <property name="no_one.height" value="one_kilometer"/>
</bean>

 

posted @ 2022-02-27 13:48  binbin_cloud  阅读(34)  评论(0编辑  收藏  举报