使用Spring Boot自动配置MongoDB和Camel,如何知道什么是application.properties



我正试图通过Spring Boot为使用MongoDB的工作项目添加一个Camel路由。我已经将Mongo与Spring Boot自动配置一起使用,而且它工作起来非常容易。

我对如何指定Spring Boot生成的bean感到困惑,但我终于找到了SO上一个相关问题的答案,该问题说bean的名称是";mongo";。所以我把我的路线改成了。改成了(mongodb:mongo?…

没有Spring试图连接到默认参数localhost和72017等。那么,我如何确定在application.properties中指定哪些属性来设置连接参数呢?这里的文档没有帮助。

{编辑:我设法弄清楚了这一点。下面的方法现在有效}

以下是我添加的Maven依赖项:

<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-mongodb</artifactId>
<version>${camel-version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-mongodb-starter</artifactId>
<version>${camel-version}</version>
</dependency>

以下是添加到我的application.properties文件中的内容

spring.data.mongodb.host=<IP>
spring.data.mongodb.port=27017
spring.data.mongodb.database=dev
spring.data.mongodb.username=test
spring.data.mongodb.password=password

和骆驼路线:

package Order;
import org.apache.camel.builder.RouteBuilder;
import org.springframework.stereotype.Component;
@Component
public class OrderRouter extends RouteBuilder {
@Override
public void configure() {

// Process message
from("jms:topic:order")
.log("JMS Message: ${body}")
.choice()
.when().jsonpath("$.[?(@.type=='partial')]")
.to("mongodb:mongo?database=dev&collection=order&operation=insert");

}
}

这是否意味着我在连接Camel时需要定义一个bean?从文档来看,它似乎应该通过添加camel-mogodb启动器和application.properties 来生成一个bean

https://camel.apache.org/components/latest/mongodb-component.html#_spring_boot_auto_configuration

我找到了springbean的名称,但只是通过四处查找示例。。。

spring.data.mongodb

最新更新