Spring之配置类代码示例

SpringConfig:

package com.lagou.edu;

import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.*;

import javax.sql.DataSource;

/**
 * @author 应癫
 */

// @Configuration 注解表明当前类是一个配置类
@Configuration
//开启注解扫描
@ComponentScan({"com.lagou.edu"})
//引入外部资源文件
@PropertySource({"classpath:jdbc.properties"})
//Import() 此注解是在这个配置类里引入其它配置类,将多个配置类都可以通过此注解引入,以此配置类为总入口,
// 应用程序加载时加载这一个类就可以了
/*@Import()*/
public class SpringConfig {

    //@Value对变量复制
    @Value("${jdbc.driver}")
    private String driverClassName;
    @Value("${jdbc.url}")
    private String url;
    @Value("${jdbc.username}")
    private String username;
    @Value("${jdbc.password}")
    private String password;


    //@Bean 将方法返回的对象加入SpringIOC容器中
    @Bean("dataSource")
    public DataSource createDataSource(){
        DruidDataSource druidDataSource = new DruidDataSource();
        druidDataSource.setDriverClassName(driverClassName);
        druidDataSource.setUrl(url);
        druidDataSource.setUsername(username);
        druidDataSource.setPassword(password);
        return  druidDataSource;
    }
}