请举例解释 @Autowired 注解?

发布于 2023-01-22 15:17:31 字数 1308 浏览 122 评论 0

@Autowired 注解对自动装配何时何处被实现提供了更多细粒度的控制。@Autowired 注解可以像@Required 注解、构造器一样被用于在bean的设值方法上自动装配bean的属性,一个参数或者带有任意名称或带有多个参数的方法。

比如,可以在设值方法上使用 @Autowired 注解来替代配置文件中的 <property> 元素。当 Spring 容器在 setter 方法上找到 @Autowired 注解时,会尝试用 byType 自动装配。

当然我们也可以在构造方法上使用 @Autowired 注解。带有 @Autowired 注解的构造方法意味着在创建一个 bean 时将会被自动装配,即便在配置文件中使用 <constructor-arg> 元素。

public class TextEditor {
   private SpellChecker spellChecker;

   @Autowired
   public TextEditor(SpellChecker spellChecker){
      System.out.println("Inside TextEditor constructor." );
      this.spellChecker = spellChecker;
   }

   public void spellCheck(){
      spellChecker.checkSpelling();
   }
}

下面是没有构造参数的配置方式:

<beans>
   <context:annotation-config/>

   <!-- Definition for textEditor bean without constructor-arg  -->
   <bean class="com.howtodoinjava.TextEditor">
   </bean>

   <!-- Definition for spellChecker bean -->
   <bean class="com.howtodoinjava.SpellChecker">
   </bean>
</beans>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

狠疯拽

暂无简介

文章
评论
292 人气
更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文