注解开发-第三方bean管理
注解开发-第三方bean管理
-
使用@Bean配置第三方bean,不建议将其放入核心配置类
@Configuration public class SpringConfig { // 1. 定义一个方法,获得要管理的对象 // 2. 添加@Bean,表示当前方法的返回值是一个bean @Bean public DataSource dataSource(){ DruidDataSource ds = new DruidDataSource(); ds.setDriverClassName("com.mysql.jdbc.Driver"); ds.setUrl("jdbc:mysql://localhost:3306/sping_db"); ds.setUsername("root"); ds.setPassword("1234"); return ds; } }
-
使用独立的配置类管理第三方bean
public class JdbcConfig { // 1. 定义一个方法,获得要管理的对象 // 2. 添加@Bean,表示当前方法的返回值是一个bean @Bean public DataSource dataSource(){ DruidDataSource ds = new DruidDataSource(); ds.setDriverClassName("com.mysql.jdbc.Driver"); ds.setUrl("jdbc:mysql://localhost:3306/sping_db"); ds.setUsername("root"); ds.setPassword("1234"); return ds; } }
-
将独立的配置类加入核心配置
-
方式一:导入式
public class JdbcConfig { // 1. 定义一个方法,获得要管理的对象 // 2. 添加@Bean,表示当前方法的返回值是一个bean @Bean public DataSource dataSource(){ DruidDataSource ds = new DruidDataSource(); // 相关配置 return ds; } }
-
使用@Import注解手动加入配置类到核心配置,此注解只能添加一次,多个数据请用数组格式
@Configuration @Import({JdbcConfig.class}) public class SpringConfig { }
-
方式二:扫描式(不推荐)
@Configuration public class JdbcConfig { // 1. 定义一个方法,获得要管理的对象 // 2. 添加@Bean,表示当前方法的返回值是一个bean @Bean public DataSource dataSource(){ DruidDataSource ds = new DruidDataSource(); // 相关配置 return ds; } }
-
使用@ComponentScan注解扫描配置类所在的包,加载对应的配置类信息
@Configuration @ComponentScan({"com.charley.config"}) public class SpringConfig { }
-