注解实现管理第三方Bean和为第三方Bean注入资源
1、添加pom坐标
<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.16</version></dependency>
2、SpringConfig配置类
@Configuration
@ComponentScan("com.itheima.dao")
@Import(JdbcConfig.class)
public class SpringConfig {
}
- @Import 导入JdbcConfig.class 类
3、 JdbcConfig配置类
public class JdbcConfig {@Value("com.mysql.jdbc.Driver")private String driver;@Value("jdbc:mysql://127.0.0.1:3306/aolao")private String url;@Value("root")private String username;@Value("mima1234")private String password;// step1: 定义一个方法获取要管理的对象// step2: 添加@Bean 表示当前方法的返回值是一个Bean@Beanpublic DataSource dataSource(BookDao bookDao){System.out.println(bookDao);DruidDataSource ds = new DruidDataSource();ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(username);ds.setPassword(password);return ds;}
}
4、使用方法
public static void main(String[] args) {AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(SpringConfig.class);DataSource bean = ctx.getBean(DataSource.class);System.out.println(bean);}
- ctx.getBean(DataSource.class) 会自动从bean中找到这个类并自动装配