c命名和p命名空间注入

HeJin小于 1 分钟Spring全家桶Spring入门

除了在xml配置文件中使用默认的bean标签属性,我们还可以通过添加命名空间来使用扩展的标签属性。

c命名和p命名空间约束,能够直接识别实体类的属性。

<?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">
    <!--无参构造-->
    <bean id="user" class="com.kuang.pojo.User" p:name="张三" p:age="33" scope="prototype"/>
    <!--有参构造-->
    <bean id="user2" class="com.kuang.pojo.User" c:name="李四" c:age="44"/>

</beans>

实体类User.java

package com.kuang.pojo;

/**
 * @author Administrator
 */
public class User {
    private String name;
    private int age;

    public User() {
    }

    public User(String name, int age) {
        this.name = name;
        this.age = 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;
    }

    @Override
    public String toString() {
        return "User{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}