Spring可以用set方法注入属性,也可以用有参的构造函数注入属性。可以这么想。set方法和有参的构造方法都可以对于属性比如说name,author啥的进行赋值。
set方法
这里我们假设创建了一个类,类里面有name和两个属性。并且我们设置了set方法
public class Book {
private String name;
private String author;
public void setname(String name) {
this.name = name;
}
public void setauthor(String author) {
this.author = author;
}
}
<bean id="book" class="com.spring5.Book">
<property name="name" value="java"></property>
<property name="author" value="李四"></property>
</bean>
这里相当于给Book类创建了一个对象,并且注入了属性。
有参构造方法
有参构造,就是创建一个有参构造函数之后
<bean id="book" class="com.spring5.Orders">
<constructor-arg name="name" value="java"></constructor-arg>
<constructor-arg name="author" value="张三"></constructor-arg>
</bean>
我们也可以引用p空间配置xml来赋值
先配置xmlms下的命名空间为p
<bean id="book" class="com.spring5.Book" p:name="java"
p:author="张三"></bean>
如果我们要注入为空,相当于 name= null ,author=null的时候。或者含有特殊符号<![CDATA[]]>配置的时候略有不同。
<!--配置为null-->
<property name="name">
<null/>
</property>
<!--特殊符号为null-->
<property name="author">
<value> <![CDATA[含有特殊符号的]]></value>
</property>