Spring @Autowired Annotation和ContextComponent Scan和@autowired注释的对象

时间:2017-04-21 06:09:20

标签: java spring autowired

我是春天新手。

我理解@Autowired注释并使用它。我了解到我们应该使用 1)context:annotation-config 2)AutowiredAnnotationBeanPostProcessor 。但是当我看到一个示例项目时,我没有找到任何东西,所以必须使用上面提到的东西。

我认为@Autowired注释会在我们在服务器中部署 web.xml 时创建对象,因为在我测试的独立应用程序中我们正在使用 public static void main( String [] args)来调用bean类。但是在web项目中我们没有这样的东西所以当我们在服务器或包含spring配置对象的application.xml中部署web.xml时将被创造。

在上述两个想象中,我的理解是否正确。

请帮帮我。

1 个答案:

答案 0 :(得分:1)

使用xml文件时,需要为各自的依赖项添加PostProcessor Bean。如果您使用

,可以跳过此步骤
 <context:annotation-config/>

这意味着您不需要添加任何annotationPostProcessors。这将包括所有这些。

其次,当您使用Autowire注释时,您将按类型自动连接。你告诉spring,在初始化期间设置了这个字段的值。

通常你需要做的是在应用程序main中,

  1. 获取applicationContext。
  2. 使用ApplicationContext,从XML获取requiredBean。
  3. 在服务类中设置bean。
  4. 您可以通过在服务类中自动装配bean来跳过这些步骤。让我知道您是否理解这一点。