您的位置:首页 > 编程语言 > Java开发

spring之IOC详解二

2016-03-02 21:16 555 查看
spring之IOC详解二

1.注入不同类型的值

(1)基本类型

使用value属性

(2)对象类型

使用ref属性

(3)集合类型

1)List

<list>

<value>

</list>

2)Set

<set>

<value>

</set>

3)Map

<map>

<entry key="" value=""/>

</map>

4)Properties

<props>

<prop key="">xxxx</prop>

</props>

注:

也可以将集合当做一个bean来配置。

<util:list>,<util:set>,<util:map>,<util:properties>

一个特殊用法:

<util:properties id="" location="classpath:config.properties"/>

代码示例:

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jdbc="http://www.springframework.org/schema/jdbc"
xmlns:jee="http://www.springframework.org/schema/jee"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
<bean id="eb"
class="container.value.ExampleBean">
<property name="name" value="东东 "/>
<property name="age" value="22"/>
<property name="interest">
<!-- 注入list -->
<list>
<value>snooker</value>
<value>football</value>
<value>fishing</value>
<value>fishing</value>
</list>
</property>
<property name="cities">
<!-- 注入set -->
<set>
<value>北京</value>
<value>上海</value>
<value>深圳</value>
<value>深圳</value>
</set>
</property>
<property name="score">
<!-- 注入map -->
<map>
<entry key="english" value="59.5"/>
<entry key="math" value="120"/>
</map>
</property>
<property name="db">
<!-- 注入properties -->
<props>
<prop key="username">Tom</prop>
<prop key="pwd">1234</prop>
</props>
</property>
</bean>
<!-- 命名空间
是为了区分同名的元素而添加的一个前缀。
-->
<!-- 将集合当作一个bean来配置 -->
<util:list id="interestBean">
<value>snooker</value>
<value>football</value>
<value>fishing</value>
</util:list>
<util:set id="citiesBean">
<value>北京</value>
<value>上海</value>
<value>深圳</value>
</util:set>
<util:map id="scoreBean">
<entry key="english" value="90"/>
<entry key="math" value="120"/>
</util:map>
<util:properties id="dbBean">
<prop key="username">John</prop>
<prop key="pwd">1234</prop>
</util:properties>
<bean id="eb2"
class="container.value.ExampleBean">
<property name="interest"
ref="interestBean"/>
<property name="cities"
ref="citiesBean"/>
<property name="score"
ref="scoreBean"/>
<property name="db"
ref="dbBean"/>
</bean>

<!-- 读取location属性指定的
文件的内容,并将这些内容添加到
Properties对象。
-->
<util:properties id="jdbc"
location="classpath:container/value/config.properties"/>

<!-- 使用spring表达式来注入 -->
<bean id="someBean"
class="container.value.SomeBean">
<property name="name"
value="#{eb.name}"/>
<property name="interest"
value="#{eb.interest[1]}"/>
<property name="score"
value="#{eb.score.math}"/>
<property name="pageSize"
value="#{jdbc.pagesize}"/>
</bean>

</beans>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: