Spring5(8) —— c和p命名空间注入

Spring5(8) —— c和p命名空间注入



1.p命名空间

    p命名空间对应我们spring依赖注入的方式2 —— set注入
Spring5(8) —— c和p命名空间注入
Spring5(8) —— c和p命名空间注入

Spring5(8) —— c和p命名空间注入
Spring5(8) —— c和p命名空间注入
    上图中的文字有误,应该是p命名空间

Spring5(8) —— c和p命名空间注入
Spring5(8) —— c和p命名空间注入
    从上面的例子我们就可以看出,要使用p命名空间首先需要导入p命名空间的约束,才能正常使用
    p(property)命名空间的作用:简化参数赋值的操作,直接在一个bean节点中就完成简单的属性赋值


2.c命名空间

    C命名空间对应我们spring依赖注入的方式1 —— 构造器注入

Spring5(8) —— c和p命名空间注入
Spring5(8) —— c和p命名空间注入
Spring5(8) —— c和p命名空间注入


3.注意点

  • p命名和c命名空间不能直接使用,需要导入对应的xml约束才能正常使用
  • p命名用于在bean节点中直接设置实例化对象的属性值,它的原理是调用属性的set方法,所以使用的时候要保证使用的属性有对应的set方法
  • c命名用于在bean节点中调用bean的有参构造函数对bean的属性进行初始化,它的原理是调用也有惨构造方法,所以使用的时候要保证类定义中有有参构造方法