spring学习之---注解配置

来源:互联网 发布:软件著作权变更流程 编辑:程序博客网 时间:2024/06/15 03:19
@Configurationpublic class AppConfig{    @Value("猴子")    private String personName;    @Bean(name="chinese")    public Person person(){        Chinese p = new Chinese();        p.setAxe(stoneAxe());        p.setName(personName);        return p;    }    @Bean(name="stoneAxe")    public Axe stoneAxe(){        return new StoneAxe();    }    @Bean(name="steelAxe")    public Axe steelAxe(){        return new SteelAxe();    }}
  • @Configuration:用于修饰一个Java配置类。
  • @Bean:用于修饰一个方法,将该方法的返回值定义成容器中的一个Bean。
  • @Value:用于修饰一个Field,用于为该Field配置一个值,相当于配置一个变量。

一旦使用了Java配置类来管理spring容器中的Bean及其依赖关系,此时需要如下方式来创建spring容器:

    ApplicationContext ctx = new AnnotationConfigApplication(AppConfig.class);

使用Java配置类时,还有如下常用的Annotation:

  • @Import:修饰一个Java配置类,用于向当前Java配置类中导入其他Java配置类。
  • @Scope:用于修饰一个方法,指定该方法对应的Bean的生命域。
  • @Lazy:用于修饰一个方法,指定该方法对应的Bean是否需要延迟初始化。
  • @DependsOn:用于修饰一个方法,指定在初始化该方法对应的Bean之前初始化指定的Bean。
  • @ImportResource(“classpath://beans.xml”):修饰Java配置类,用于导入指定的XML配置文件。
原创粉丝点击