spring注入类型要点

    /**
     * Spring有三种注入方法:
     * <ul>
     * <li>通过明确的bean definition声明来注入对象,缺点是无法注入
     * <code>ConfigurableListableBeanFactory.registerResolvableDependency()</code>
     * 中注册的对象,如<code>HttpServletRequest</code>。</li>
     * <li>通过autowire
     * byConstructor来注入对象,可以注入包括resolvableDependency在内的对象,缺点是无法将注入对象设成“optional”
     * ,即:对象不存在,则报错。</li>
     * <li>通过autowire
     * byName/byType来注入对象,相当于optional注入,缺点是不能注入包括resolvableDependency在内的对象
     * ,且会自动对所有property进行注入,无法精确控制,可能造成不确定情况。</li>
     * <li>通过<code>@Autowired</code>
     * annotation来注入对象,可以注入包括resolvableDependency在内的对象
     * ,也可以设置optional选项。缺点是有侵入性,必须修改bean class的代码。Springext试图将注入的多样性限定在
     * <code>BeanDefinitionParser</code>的范围中,因此使用annotation不是最好的方法。</li>
     * </ul>
     * <p>
     * 本方法提供一个bean definition,可被<code>BeanDefinitionParser</code>
     * 调用,用来注入到的constructor arg,并支持resolvableDependency对象以及optional选项。
     * </p>
     */

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值