使用Spring Boot自动配置MongoDB与Camel,如何配置application.properties

iqxoj9l9  于 2022-11-07  发布在  Apache
关注(0)|答案(1)|浏览(157)

我正在尝试添加一个Camel路由器到一个使用MongoDB的Sping Boot 工作项目中。我已经使用Mongo和Spring Boot自动配置,它工作得相当容易。
我对如何指定Sping Boot 生成的bean感到困惑,但我最终找到了SO上一个相关问题的答案,该问题称bean的名称为“mongo”。因此,我将我的rout更改为.to(“mongodb:mongo?...。
没有Spring尝试连接到默认参数,localhost和72017等。那么,我如何确定在www.example.com中指定哪些属性application.properties来设置连接参数呢?文档在这里没有帮助。
{Edit:我设法弄明白了这一点。下面的工作现在}
下面是我添加的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>

下面是对我的www.example.com文件的补充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

Camel 路线:

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-mongodb-starter沿着应用程序来生成一个bean。properteis
https://camel.apache.org/components/latest/mongodb-component.html#_spring_boot_auto_configuration

rqenqsqc

rqenqsqc1#

我找到了Spring Bean的名字,但只是通过四处寻找例子......
spring.data.mongodb

相关问题