Spring如何使用XML实现自动装配Bean呢?
下文笔者讲述Spring中使用xml对Bean进行自动装配
创建一个名称为 com.java265.assembly包
在该包下创建一个 Person 类
创建名为 XmlBeanAssemblyTest测试类
Bean装配简介说明
bean装配:
其实其原理是依赖关系注入
我们都知道Spring支持多种装配方式:
如:
xml方式的Bean装配
注解方式的Bean装配
下文笔者将采用示例的方式讲述xml实现bean的装配
例:
创建Person类
在项目的src目录下创建一个名称为 com.java265.assembly包
在该包下创建一个 Person 类
package com.java265.assembly;
public class Person {
private String name;
private int 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;
}
// 重写toString()方法
public String toString() {
return "Person[name=" + name + ",age=" + age + "]";
}
// 默认无参的构造方法
public Person() {
super();
}
// 有参的构造方法
public Person(String name, int age) {
super();
this.name = name;
this.age = age;
}
}
创建Spring配置文件
com.java265.assembly包下
创建一个名为 applicationContext.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" xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd">
<!-- 使用设值注入方式装配Person实例 -->
<bean id="person1" class="com.java265.assembly.Person">
<property name="name" value="maomao" />
<property name="age" value="28" />
</bean>
<!-- 使用构造方法装配Person实例 -->
<bean id="person2" class="com.java265.assembly.Person">
<constructor-arg index="0" value="xiaocheng" />
<constructor-arg index="1" value="18" />
</bean>
</beans>
创建测试类
在 com.java265.assembly 包下创建名为 XmlBeanAssemblyTest测试类
package com.java265.assembly;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class XmlBeanAssemblyTest {
@Test
public void test() {
// 定义Spring配置文件路径
String xmlPath = "com/java265/assembly/applicationContext.xml";
// 初始化Spring容器,加载配置文件,并对bean进行实例化
ApplicationContext applicationContext = new ClassPathXmlApplicationContext(
xmlPath);
// 设值方式输出结果
System.out.println(applicationContext.getBean("person1"));
// 构造方式输出结果
System.out.println(applicationContext.getBean("person2"));
}
}
运行项目并查看结果
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


