Spring DI 属性注入深入——P名称空间和spEL表达式

P名称空间

在Spring2.5后引入了P名称空间,用于简化setter方法属性注入。

使用P名称空间,首先需要在applicationContext.xml中引入P名称空间的配置:

xmlns:p="http://www.springframework.org/schema/p"

使用方法:

p:< 属性名 >="xxx" 引入常量值
p:< 属性名 >-ref="xxx" 引用其它 Bean 对象

示例:
<bean id="employee2" class="cn.itcast.spring.e_di.Employee" 
		p:eid="100002" p:name="李四" p:car-ref="car"/>
______________________________________________________________________________________________
spEL表达式语言(Spring Expression Language)
在spring3.0之后,引入spEL 表达式语言,简化属性注入 。

用法一:使用value引用一个bean
<bean id="employee3" class="cn.itcast.spring.e_di.Employee" >
	<!-- #{car} 效果类似 ref  -->
	<property name="car" value="#{car}" />
</bean>
用法二:引用bean对象的属性
<bean id="employee3" class="cn.itcast.spring.e_di.Employee" >
	<!-- 调用valueBean的getId -->
	<property name="eid" value="#{valueBean.id}" />
</bean>
用法三:引用bean对象的方法
<bean id="employee3" class="cn.itcast.spring.e_di.Employee" >
	<!-- 直接调用对象的方法 -->
	<property name="name" value="#{valueBean.pickName().toUpperCase()}" />
</bean>






你可能感兴趣的:(spring,DI,p名称空间,spEL表达式)