Spring Frameword - 12-注解方式管理第三方bean

使用独立的配置类管理第三方bean

public class JdbcConfig {
    @Bean
    public DataSource dataSource(){
        DruidDataSource ds = new DruidDataSource();
        ds.setDriverClassName("com.mysql.jc.jdbc.Driver");
        ds.setUrl("jdbc:mysql://localhost:3306/db1");
        ds.setUsername("root");
        ds.setPassword("123456");
        return ds;
    }
}

使用@Import注解手动加入配置类到核心配置,此注解只能添加一次,多个数据请用数组格式

@Import(JdbcConfig.class)
public class SpringConfig {}

案例一配置类管理第三方bean

public class JdbcConfig {
    @Value("com.mysql.jc.jdbc.Driver")
    private String driver;
    @Value("jdbc:mysql://localhost:3306/db1")
    private String url;
    @Value("root")
    private String user;
    @Value("123456")
    private String pass;

    @Bean
    public DataSource dataSource(BookDao bookDao){
        System.out.println(bookDao);
        DruidDataSource ds = new DruidDataSource();
        ds.setDriverClassName(driver);
        ds.setUrl(url);
        ds.setUsername(user);
        ds.setPassword(pass);
        return ds;
    }
}

@Configuration
@ComponentScan({"com.itheima"})
@PropertySource("jdbc.properties")
@Import(JdbcConfig.class)
public class SpringConfig {

}

public class app2 {
    public static void main(String[] args) {


    ApplicationContext cxk = new AnnotationConfigApplicationContext(SpringConfig.class);
        DataSource dataSource = cxk.getBean(DataSource.class);
        System.out.println(dataSource);
    }}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容