<bean id="student" class="com.jun.pojo.Student">
<!--第一种,普通值注入,使用 value-->
<property name="name" value="峻仔"/>
<!--Bean注入,使用 ref-->
<property name="address" ref="address"/>
<!--数组-->
<property name="books">
<array>
<value>红楼梦</value>
<value>水浒传</value>
<value>西游记</value>
<value>三国演义</value>
</array>
</property>
<!--List-->
<property name="hobbys">
<list>
<value>听歌</value>
<value>玩游戏</value>
<value>看电影</value>
</list>
</property>
<!--Map-->
<property name="card">
<map>
<entry key="身份证" value="123456789"/>
<entry key="银行卡" value="987654321"/>
</map>
</property>
<!--Set-->
<property name="games">
<set>
<value>LOL</value>
<value>WOW</value>
<value>QAQ</value>
</set>
</property>
<!--null-->
<property name="wife">
<null></null>
</property>
<!--Properties-->
<property name="info">
<props>
<prop key="学号">20210119</prop>
<prop key="生日">19980119</prop>
</props>
</property>
</bean>
<bean id="address" class="com.jun.pojo.Address"/>
c、p命名空间注入
设置作用域:原型模式和单例模式
<!--scope="" 设置作用域
singleton 单例模式:确保一个类只有一个实例,并提供一个全局访问点
创建的实例只有一个,每次getBean都是同一个对象
prototype 原型模式:使用原型实例指定待创建对象的类型,并且通过复制这个原型来创建新的对象。
每次从容器中getBean的时候都会产生一个新的对象
-->
<!--p命名空间注入,可以直接注入属性的值,相当于property-->
<bean id="user" class="com.jun.pojo.User" p:name="峻仔" p:age="18" scope="singleton"/>
<!--c命名空间注入,通过构造器注入属性的值,相当于constructor-->
<bean id="user2" class="com.jun.pojo.User" c:name="许嵩" c:age="18" scope="prototype"/>