欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring注解:@Configuration和@Bean

程序员文章站 2022-05-21 22:45:21
...

常用的将类的生命周期交给spring管理的几种方式:

1.在Spring的.xml配置文件中配置Bean
2.使用Spring注解@Controller @Service @Component
3.使用@Configuration和@Bean注解

@Configuration可理解为用spring .xml配置文件里的beans标签
@Bean可理解为用spring .xml配置文件里面的bean标签
注意:1、使用Spring时,注意加上扫包配置,和其他注解一样,只有被扫到改注解才会生效。如果使用SpringBoot则不需要,因为SpringBoot默认扫描Main入口文件,所在包下的所有类

实战说明:

@Configuration
public class BeansConfig {

    @Value("com.mysql.jdbc.Driver")
    private String className;

    @Value("jdbc://xxxx.ooo.xx")
    private String url;

    @Value("${userName}")
    private String username;

    @Value("${password}")
    private String password;

    @Bean(name = "mysqlDataSource")
    //name:BeanId
    //如果不指定name属性则BeanId默认类名首字符小写
    public DataSource createDataSourceBean() {
        BasicDataSource dataSource = new BasicDataSource();
        dataSource.setDriverClassName(driverClassName);
        dataSource.setUrl(driverUrl);
        dataSource.setUsername(driverUsername);
        dataSource.setPassword(driverPassword);
        return dataSource;
    }

    @Bean
    //存在依赖关系的Bean
    public PlatformTransactionManager transactionManager() {
        return new DataSourceTransactionManager(createDataSourceBean());
    }

    @Bean
    public People peopleBean(){
        return new People(123,"zjh","北京海淀区");
    }
}