首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么Spring不支持直接的字段依赖注入(自动连接除外)?

为什么Spring不支持直接的字段依赖注入(自动连接除外)?
EN

Stack Overflow用户
提问于 2011-03-25 21:32:19
回答 1查看 12.7K关注 0票数 20

我对直接的字段依赖注入很感兴趣。传统上,Spring支持构造函数注入(向构造函数提供参数)和基于setter的注入(在调用时调用setter)。

但是,Spring也能够直接注入字段(设置对象的成员字段而不使用设置器方法),这可以通过使用@Autowired注释字段来证明。自动装配仅限于" beans ",所以原始值不能被注入(尽管这可以通过创建"java.lang.String“类的beans来规避-这是可行的,但具有自动装配的正常注意事项)。除此之外,Spring还支持@Value直接从属性等为成员字段设置值。

然而,Spring不允许将属性直接设置为成员字段(无需自动装配)。

我的问题是:为什么?

它显然有能力做到这一点,那么为什么它不能呢?有没有什么大的负面影响来阻止这一点?或者是因为功能有限,所以只有自动装配才有意义?它需要比调用setter更大的技巧吗?

请注意,我不想讨论拥有setter和getter的相对优点,只是讨论Spring做出这个选择的原因。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5433143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档