我有一个项目,其中使用了spring-boot-jdbc-starter
并自动为我配置了数据源。
现在我添加了camel-spring-boot
到项目中,并成功地从类型为RouteBuilder
的bean创建路由。
但是当我使用camel的sql组件时,它找不到数据源。是否有简单的方法将Spring配置的数据源添加到CamelContext
中? 在camel项目示例中,它们使用Spring xml进行数据源配置,但我正在寻找一种使用Java配置的方法。 这是我尝试过的:
@Configuration
public class SqlRouteBuilder extends RouteBuilder {
@Bean
public SqlComponent sqlComponent(DataSource dataSource) {
SqlComponent sqlComponent = new SqlComponent();
sqlComponent.setDataSource(dataSource);
return sqlComponent;
}
@Override
public void configure() throws Exception {
from("sql:SELECT * FROM tasks WHERE STATUS NOT LIKE 'completed'")
.to("mock:sql");
}
}
?dataSource=dataSource
即可按预期工作。 - Meysam