Spring的依賴注入之p命名空間和c命名空間


p命名空間是set注入的一種快捷實現方式,想要使用p命名空間注入,需要注意一下幾點。

1. 實體類中必須有set方法;

2. 實體類中必須有無參構造器(默認存在);

3. 必須導入p命名空間注入方式依賴。

xml依賴代碼:

xmlns:p="http://www.springframework.org/schema/p"

導入后即可使用

<bean id="user" class="com.yd.pojo.User" p:age="18" p:name="老王"/>

c命名空間是構造器注入的一種快捷實現方式,想要使用c命名空間,需要注意一下幾點。

1. 實體類中必須存在有參構造器;

2. 必須導入c命名空間注入方式依賴。

xml依賴代碼:

xmlns:c="http://www.springframework.org/schema/c"

導入后即可使用

<bean id="user2" class="com.yd.pojo.User" c:age="23" c:name="中王"/>

當使用p命名空間注入時的實體類可以這樣寫:

package com.yd.pojo;

public class User {
    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;
    }

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

當使用c命名空間注入方式時,實體類可以這樣寫

package com.yd.pojo;

public class User {
    private String name;
    private int age;
    
    public User(String name, int age) {
        this.name = name;
        this.age = age;
    }

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM