本文博客地址:http://www.jb51.cc/article/p-yvqddphu-bps.html (转载请注明出处)
首先区分 idref 和 ref 的区别:
前面我们在setter注入中,多采用通过ref指向要注入的对象id:
<bean id="notify" class="twm.spring.start.NotifyServiceByCellPhoneImpl" />
<bean id="order" class="twm.spring.start.Order" >
<!-- 配置要注入的对象 -->
<property name="notifyservice" ref="notify"/>
</bean>
如果ref=”notify”中打错字了,比如打成notfy,那么开发过程中是不会校验错误的,只有在运行中才会报错。
idref元素的功能与<value>
类似,只不过idref多了验证的功能,减少配置的书写错误机率。
使用idref的代码:
<bean id="notify" class="twm.spring.start.NotifyServiceByCellPhoneImpl" />
<bean id="order" class="twm.spring.start.Order" >
<property name="notifyservice">
<idref bean="notify" />
</property>
</bean>
ref有三个属性:local、parent、bean,具体区别如下:
local:(spring 4.0版本已经不支持该属性)只能指定与当前配置的对象在同一个配置文件的对象定义的名称;
parent:则只能指定位于当前容器的父容器中定义的对象引用;
bean:基本上没有限制。所以,通常情况下,直接使用bean来指定对象引用就可以了。
本文博客地址:http://www.jb51.cc/article/p-yvqddphu-bps.html (转载请注明出处)
原文地址:https://www.jb51.cc/javaschema/283204.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。