Skip to content
B1o0dy_Trey edited this page Feb 6, 2020 · 11 revisions

快速入门

使用IoC容器有如下几个步骤

  1. 使用@Named注解标注需要管理的bean。
  2. 设置bean的Scope属性(可选)
  3. 创建ApplicationContext实例,启动上下文
  4. 获取bean。
  5. 关闭上下文

新建项目

首先我们应该先将依赖导入到maven工程。在pom.xml文件中添加以下内容

<!-- https://mvnrepository.com/artifact/com.github.bdqfork/festival-core -->
        <dependency>
            <groupId>com.github.bdqfork</groupId>
            <artifactId>festival-core</artifactId>
            <version>0.3</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.github.bdqfork/festival-parent -->
        <dependency>
            <groupId>com.github.bdqfork</groupId>
            <artifactId>festival-context</artifactId>
            <version>0.3</version>
        </dependency>

向容器中添加bean。

在src/main/java/bean目录下,新建一个ExampleBean类,并使用@Named注解标注,代码如下:

@Singleton
@Named
public class ExampleBean{}

编写一个工厂方法

@Configuration可以将一个类标注成配置类,只有在配置类中才可以编写工厂方法。

下面我们在src/main/java/bean下,新建一个ConfigurationBean类,代码如下:

@Configuration
public class ConfigurationBean{
    @Named("factoryBean")
    public ExampleBean factoryMethod(ExampleBean bean){
        return bean;
    }
}

工厂方法的产品bean的获取方法和普通的bean相同。

获取bean,关闭上下文

随后在src/main/java目录下,新建一个Example类,用于演示如何取出bean。代码如下

public class Example{
    public static void main(String[] args){
        AnnotationApplicationContext applicationContext = new AnnotationApplicationContext("bean");
        ExampleBean bean = applicationContext.getBean(ExempleBean.class);
        ExampleBean factoryBean = applicationContext.getBean("factoryBean");
        applicationContext.close();
    }
}

至此,大功告成。