Spring对Bean属性赋值(注入)

第一种:通过构造方法设置值

第二种:设置注入(通过set方法)

1. 如果属性是基本数据类型或String。

private int id;
 private String name;

通过以下方式给对象属性赋值:

 <bean id="peo" class="com.bean.People">
  <property name="id" value="1"></property>
  <property name="name" value="张三"></property>
 </bean>

等效于:

 <bean id="peo" class="com.bean.People">
  <property name="id">
   <value>1</value>
  </property>
  <property name="name">
   <value>张三</value>
  </property>
 </bean>

2、如果属性是Set类型

 private int id;
 private String name;
 private Set<String> sets;

通过以下方式给对象属性赋值:

 <bean id="peo" class="com.bean.People">
  <property name="id">
   <value>1</value>
  </property>
  <property name="name">
   <value>张三</value>
  </property>
  <property name="sets">
   <set>
    <value>1</value>
    <value>2</value>
    <value>3</value>
    <value>4</value>
   </set>
  </property>
 </bean>

输出结果为:
在这里插入图片描述


3、如果属性是List类型

private List<String> list;

如果list中值有多个值,通过以下方式给对象属性赋值:

<bean id="peo" class="com.bean.People">
<property name="list">
   <list>
    <value>1</value>
    <value>2</value>
   </list>
  </property>
 </bean>

输出结果为:list=[1,2]

如果list中值有一个值,通过以下方式给对象属性赋值:

 <bean id="peo" class="com.bean.People">
  <property name="list" value="1">
  </property>
 </bean>

输出结果为:list=[1]


4、如果属性是数组类型

private String[] strs;

如果数组中值有多个值,通过以下方式给对象属性赋值:

  <bean id="peo" class="com.bean.People">
  <property name="strs">
   <array>
    <value>1</value>
    <value>2</value>
    <value>3</value>
    <value>4</value>
   </array>
  </property>
 </bean>

输出结果:strs=[1, 2, 3, 4]

如果数组中值有一个值,通过以下方式给对象属性赋值:

 <bean id="peo" class="com.bean.People">
  <property name="strs" value="1">
  </property>
 </bean>

输出结果:strs=[1]


5、如果属性是Map类型

 private Map<String, String> map;

通过以下方式给对象属性赋值:

  <bean id="peo" class="com.bean.People">
  <property name="map">
   <map>
    <entry key="a" value="b"></entry>
    <entry key="c" value="d"></entry>
   </map>
  </property>
 </bean>

输出结果:map={a=b, c=d}


6、如果属性是properties类型
如果有个文件为demo.properties,里面内容为a=b;键值对

通过以下方式给对象属性赋值:

 <bean id="peo" class="com.bean.People">
  <property name="demo">
   <props>
    <prop key="a">b</prop>
   </props>
  </property>
 </bean>

7、如果属性是对象类型
除People类另外设置一个Desk类。
Desk类:

 private int id;
 private double price;

如果People类需要依赖Desk类对象(依赖注入)

 private Desk desk;

通过以下方式给对象属性赋值:

 <bean id="peo" class="com.bean.People">
  <property name="desk" ref="desk1" ></property>
 </bean>
 <bean id="desk1" class="com.bean.Desk">
  <property name="id">
   <value>1</value>
  </property>
  <property name="price">
   <value>20</value>
  </property>
 </bean>

输出结果:desk=Desk [id=1, price=20.0]

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值