spring 用xml装配bean,两个xml配置文件间的互调

时间:2019-11-26
本文章向大家介绍spring 用xml装配bean,两个xml配置文件间的互调,主要包括spring 用xml装配bean,两个xml配置文件间的互调使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

首先建两个测试类

package soundsystem;

public class Dog {
    private String Cry;
    private Cat Cat;

    public void setCry(String cry) {
        Cry = cry;
    }

    public void setCat(soundsystem.Cat cat) {
        Cat = cat;
    }


    public void DogCry(){
        System.out.println("狗叫:"+Cry);
        Cat.CatCry();
    }
}
package soundsystem;

public class Cat {
    private String Cry;

    public Cat(String cry){
        this.Cry=cry;
    }

    public void CatCry(){
        System.out.println("猫叫:"+Cry);
    }
}

然后针对两类建两个xml配置文件

Bean_DogXML.xml

<?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">

    <import resource="Bean_CatXML.xml"></import>

    <bean id="Dog" class="soundsystem.Dog">
        <property name="Cry" value="汪汪汪~"></property>
        <property name="cat" ref="Cat"></property>
    </bean>

</beans>

Bean_CatXML.xml

<?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">

    <bean id="Cat" class="soundsystem.Cat">
        <constructor-arg value="喵喵~"></constructor-arg>
    </bean>
</beans>

现在开始测试:

package Test;

import org.junit.runner.RunWith;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import soundsystem.Cat;
import soundsystem.Dog;

@RunWith(SpringJUnit4ClassRunner.class)
public class Test {

    @org.junit.Test
    public static void main(String[] args) {
        ApplicationContext ap=new ClassPathXmlApplicationContext("config/Bean_DogXML.xml");
        Dog dog=(Dog)ap.getBean("Dog");
        dog.DogCry();
    }
}

输出结果是:

原文地址:https://www.cnblogs.com/yyy116008/p/11938676.html