为了简化 XML 文件的配置,越来越多的 XML 文件采用属性而非子元素配置信息。
Spring 从 2.5 版本开始引入了一个新的 p 命名空间,可以通过 <bean> 元素属性的方式配置 Bean 的属性。
使用 p 命名空间后,基于 XML 的配置方式将进一步简化
使用c命名空间就是为了更加方便的使用有参构造方法注入
1.创建实体类
package pojo;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
@NoArgsConstructor
@ToString
@Data
public class User {
private String name;
private int age;
}
2.在头标签中插入
xmlns:p="http://www.springframework.org/schema/p" xmlns:c="http://www.springframework.org/schema/c"
<?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"
xmlns:c="http://www.springframework.org/schema/c"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd">
3.编写配置文件
<bean id="user1" class="pojo.User" p:name="田奇辉" p:age="22"/>
<bean id="user2" class="pojo.User" c:name="车祥" c:age="22"/>
@Test
public void test1(){
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
User bean2 = context.getBean("user2",User.class);
User bean1 = context.getBean("user1",User.class);
System.out.println(bean1.toString() + " "+bean2.toString());
}
结果