我正在尝试使用基于Javaconfig的Spring配置.我有两个相同类型的bean,并尝试通过限定符自动装配它们.但它似乎没有奏效.
这是我的Configuration类
@Configuration
@EnableAutoConfiguration
@ComponentScan("com.test")
public class BasicConfig {
@Bean(name = "mysqlSource")
@Qualifier("mysqlSource")
public DataSource jdbcTemplateMySql() {
BasicDataSource dataSource = new BasicDataSource();
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/db1?useUnicode=true&characterEncoding=UTF-8");
dataSource.setUsername(mysqlUser);
dataSource.setPassword(mysqlPass);
return dataSource;
}
@Bean(name = "oracleSource")
@Qualifier("oracleSource")
public DataSource jdbcSourceOracle() {
BasicDataSource dataSource = new BasicDataSource();
dataSource.setDriverClassName("oracle.jdbc.driver.OracleDriver");
dataSource.setUrl("jdbc:oracle:thin:@lab-scan.tigeritbd.com:1521/evidb.tigeritbd.com");
dataSource.setUsername(oracleUser);
dataSource.setPassword(oraclePass);
return dataSource;
}
}
这两个是我正在尝试使用autowire的其他类.
@Repository
public class TrackingInfiniDBRepo implements DataPutRepo {
private NamedParameterJdbcTemplate jdbcTemplate;
@Autowired
void setJdbcTemplateOracle(@Qualifier("mysqlSource") DataSource dataSource) {
jdbcTemplate = new NamedParameterJdbcTemplate(dataSource);
}
}
@Repository
public class OracleDataFetcherRepo implements DataFetcherRepo { …Run Code Online (Sandbox Code Playgroud)