java中check属性_5.6.2 bean/元素的dependency-check属性

5.6.2  元素的dependency-check属性

Autowiring策略并不是***的,因为受管Bean所需要的协作者可能没有如期找到。为了确认协作者是否找到,即完成依赖性检查,我们可以启用暴露的dependency-check属性。表5-2详细给出了dependency-check属性的具体含义。

表5-2  dependency-check属性

dependency-check属性值

具体含义

none

不去检查受管Bean的依赖性,这是受

管Bean的默认行为

simple

仅仅对Java原型(primitive)和集合类型进行检查

objects

仅仅对协作者(对象类型)进行检查

all

同时对Java原型(primitive)、集

合类型、协作者(对象类型)进行检查

default

同级别指定的一致

位于autowiringdemo项目中的DependencyCheckDemo所使用的dependency-check.xml配置文件摘录如下。

此时,dependency-check属性使用了objects取值。对于TestBean而言,这意味着hw1和hw2属性的设值将被检查。一旦开发者没有为hw1或hw2提供相应的取值,则运行期会通不过依赖性检查。同理,如果将objects换成simple,则仅仅会检查str的依赖性。如果使用all取值,则所有的属性都需要通过依赖性检查。另外,开发者是否注意到与元素的差异性。同起到的作用完全不同,前者是为目标属性提供null值,而后者是为目标属性提供空字符串("")。

揭开依赖性检查的本质

注意,在实施依赖性检查时,DI容器仅仅会检查各属性对应的设值方法是否被调用,而不会去关心开发者为这一设值方法提供的具体取值。比如,即使上述hw2属性取值为null,但还是能够通过DI容器的依赖性检查,因为setHw2设值方法确实被调用了。

【责任编辑:云霞 TEL:(010)68476606】

点赞 0

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值