Spring的依赖注入之p命名空间和c命名空间
Posted 老王同鞋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 + ‘}‘; } }
以上是关于Spring的依赖注入之p命名空间和c命名空间的主要内容,如果未能解决你的问题,请参考以下文章
Spring入门-----7依赖注入之c命名和p命名空间注入