A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© vipzh 中级黑马   /  2012-12-1 12:06  /  979 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

spring 里的 一个配置的属性default-autowire="byName" 这个怎么用?

1 个回复

正序浏览
本帖最后由 孙玉伟 于 2012-12-1 12:31 编辑

这个是spring的配置,也就是通过名称来实现自动装配!byName,byType,constructor和autodetect是自动装入的四种实现方式。
例子:
      byName:

Service.java
public class Service
{
    Source source;
    public void setSource(Source source)
    {
        this.source = source;
    }
}
applicationContext.xml
<beans
   ...
   default-autowire="byName">
    <bean id="source" class="cn.hh.spring.DBCPSource" scope="prototype"/>
    <bean id="service" class="cn.hh.spring.Service" scope="prototype">
    </bean>
</beans>
cn.hh.spring.DBCPSource实现了Source接口
xml中并没有给 bean service配Source属性,但在beans中设置了autowire="byName",这样配置文件会自

动根据 cn.hh.spring.Service 中的setSource找bean id="Source"的bean ,然后自动配上去,如果没找

到就不装配。

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马