【Spring 注解】@Configuration和@Bean

@Configuration注解

在spring开发当中我们经常使用配置文件的形式来实例化bean、注入bean等操作。例如在spring-bean.xml中配置:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    <!--实例化一个Person对象-->
    <bean id="person" class="com.sff.app.bean.Person"/>
</beans>

那么@Configuration注解就相当于我们的spring-bean.xml文件,它可以这样使用。

/**
 * 配置类等价于spring-bean.xml文件
 */
@Configuration
public class AppConfig {
}

@Bean注解

它注解于方法之上,告诉方法让其产生一个Bean对象,然后把这个Bean对象交给Spring管理。产生这个Bean对象的方法Spring只会调用一次,随后Spring将会将这个Bean对象放在自己的IOC容器中。

/**
 * 配置类等价于spring-bean.xml文件
 */
@Configuration
public class AppConfig {
    /*给容器中注册一个bean,类型是方法返回值,id就是方法名称*/
    @Bean
    public Person person() {
        return new Person("Kate", 12);
    }
}
    原文作者:一只小小鸟
    原文地址: https://segmentfault.com/a/1190000015938029
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞