正在加载中...

IOC的C标签和P标签

IOC的C标签和P标签

前沿:C标签和P标签用法相同,只不过导入的并不一样,要注意的是使用C标签是构造注入需要在实体类中有无参和有参的构造,P标签则不同他是通过Set注入所以他两者使用的时候并无很大的区别,但是他的进行注入方式有很大的区别,这个一定要注意!

C标签和P标签需要导入XML的约束

p标签: xmlns:p="http://www.springframework.org/schema/p"
​
C标签: xmlns:c="http://www.springframework.org/schema/c"

 

正文

1.首选创建实体类

注:肯定是先写实体类,不写实体类怎么进行注入?我2中标签都使用,所以无参、有参、get、set、tostring都写了

public class TestBean {
    private String name;
    private String pwd;
​
    public TestP() {
    }
​
    public TestP(String name, String pwd) {
        this.name = name;
        this.pwd = pwd;
    }
​
    public String getName() {
        return name;
    }
​
    public void setName(String name) {
        this.name = name;
    }
​
    public String getPwd() {
        return pwd;
    }
​
    public void setPwd(String pwd) {
        this.pwd = pwd;
    }
​
    @Override
    public String toString() {
        return "TestP{" +
                "name='" + name + '\'' +
                ", pwd='" + pwd + '\'' +
                '}';
    }

 

2.创建Spring的xml

注:记得xml中头部需要引入P、C标签的xmlns

<?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 http://www.springframework.org/schema/beans/spring-beans.xsd">
​
    <!-- C标签-->
    <bean id="C" class="com.zzy.pojo.TestP" c:name="name" c:pwd="pwd"></bean>
    <!-- P标签-->
    <bean id="P" class="com.zzy.pojo.TestP" p:name="name" p:pwd="pwd"></bean>
    
    <!-- 错误演示,千万要看清楚,别把C和P写在一起,会出现报错-->
    <bean id="X" class="com.zzy.pojo.TestP" c:name="name" p:pwd="pwd"></bean>
​
</beans>

3.创建Test测试类

注:test测试类我就不写注释了...

public static void main(String[] args) {
        ApplicationContext context = new ClassPathXmlApplicationContext("beanp.xml");
        TestP test = (TestP) context.getBean("C");
        System.out.println(test);
    }

 

posted @ 2021-11-23 19:29  笑太苦  阅读(116)  评论(0)    收藏  举报