【问题标题】:Connect to Mongo (hosted on VM) from local machine using SpringBoot使用 Spring Boot 从本地机器连接到 Mongodb(托管在 VM 上)
【发布时间】:2018-07-05 10:38:42
【问题描述】:

我已经在虚拟机上设置了 MongoDB。现在我需要使用 SpringBoot 从本地机器连接到 Mongo(托管在 VM 上)。鉴于我拥有虚拟机的用户名、密码和 IP 地址,我应该在 application.propeties 文件中进行哪些更改。

如何在 VM 中为以下 InitDatabase 类设置 Mongo

import org.springframework.boot.CommandLineRunner;
import org.springframework.context.annotation.Bean;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.stereotype.Component;

@Component
public class InitDatabase {
@Bean
CommandLineRunner init(MongoOperations operations) {
    return args -> {
        operations.dropCollection(Image.class);

        operations.insert(new Image("1",
            "learning-spring-boot-cover.jpg"));
        operations.insert(new Image("2",
            "learning-spring-boot-2nd-edition-cover.jpg"));
        operations.insert(new Image("3",
            "bazinga.png"));

        operations.findAll(Image.class).forEach(image -> {
            System.out.println(image.toString());
        });
    };
}
}

【问题讨论】:

    标签: mongodb spring-boot spring-data virtual-machine


    【解决方案1】:

    您应该覆盖 spring.mongodb 配置属性:

    MongoDB 配置

    spring.data.mongodb.authentication-database= *which_authentication_database_you_want_to_connect*
    
     spring.data.mongodb.username=*database_username* 
    
     spring.data.mongodb.password=*database_password* 
      
     spring.data.mongodb.database=*which_database_you_want_to_connect*  
    
     spring.data.mongodb.port=*running_mongo_instance_port* 
    
     spring.data.mongodb.host=*running_mongo_instance_host -- you should write your own VM's ip address*
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-20
      • 1970-01-01
      • 2018-12-19
      • 2012-09-10
      • 1970-01-01
      • 2021-05-04
      • 2022-07-20
      • 2018-04-11
      相关资源
      最近更新 更多