怎么读取服务器中的文件去配置mongo的连接

使用的是mongotemplate,本来在项目的properties文件中,直接配置uri一行就搞定了并开发完成了,但是公司出于安全考虑需要把账号相关信息放在服务器上。
之前的人应该做好了可以直接读到服务器那个存储账号信息的文件的内容,现在需要做的是拿这个文件的账号信息去配置mongo的连接,配置mongotemplate

如果是springboot项目,可以直接在jar同级目录建一个config目录,新建一个application.properties 文件,将mongodb的配置放在这里

参考这个写写吧,有不明白的可以留言,springboot的项目

package mongo;

import com.mongodb.ConnectionString;
import com.mongodb.MongoClientSettings;
import com.mongodb.MongoCredential;
import lombok.SneakyThrows;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.mongo.MongoClientSettingsBuilderCustomizer;
import org.springframework.core.io.Resource;
import org.springframework.stereotype.Component;
import org.springframework.util.StreamUtils;

import java.nio.charset.StandardCharsets;
import java.util.Arrays;


@Component
public class MongoConfig implements MongoClientSettingsBuilderCustomizer {
    /**
     * 读取配置文件
     */
    @Value("file:///Users/zhangyz/temp/demo/demo003/test.txt")
    private Resource resource;

    @SneakyThrows
    @Override
    public void customize(MongoClientSettings.Builder clientSettingsBuilder) {
        final String s = StreamUtils.copyToString(resource.getInputStream(), StandardCharsets.UTF_8);
        final String[] split = s.split("\n");
        System.out.println(Arrays.toString(split));
        ConnectionString connectionString = new ConnectionString(String.format("mongodb://localhost:%s/%s", split[0], split[1]));
        clientSettingsBuilder.credential(MongoCredential.createCredential(split[2], split[1],
                split[3].toCharArray()));
        clientSettingsBuilder.applyConnectionString(connectionString);
    }
}

如果是springboot框架之上的,你可以了解下配置中心!

如果是其他的,你可以仿造一个配置中心

参考一下


本地访问云服务器(linux)中的mongoDB,附配置,以studio3T访问为例_苏一恒的博客-CSDN博客 最近在玩mongo,发现在连接云服务器中的数据库时,遇到了一些坑,但是发现很多解决教程还是偏繁琐一点,于是有了下面都安装步骤。连接ubuntu我使用的是mac来操作阿里云上的ubuntu,使用了ssh连接打开终端:ssh root@39.106.201.50然后输入密码连接到远程ubuntu安装和启动mongoDB如果已安装可以跳过这一步安装mongosudo apt install mongodb安装时自动启动,检查服务状态sudo systemctl status mongod https://blog.csdn.net/HuoYiHengYuan/article/details/109005813

利用Python读取MongoDB的数据_ziyin_2013的博客-CSDN博客_python读取mongodb数据 近日在处理数据的时候遇到一个问题,数据存储在MongoDB数据库,而MongoDB模式自由、具有很大的灵活性,可以把不同结构的文档存储在同一个数据库里,即表的字段不是完全固定的,当某个字段有值时就会显示该字段,而当该字段没有值时就不显示该字段。因此,同一个数据库表根据不同的条件查询得到的字段数可能会不一样,字段个数不同。现在想得到每个SourceCode下的数据包含哪些字段,而SourceCode取值有70多个,如果手动统计有点耗时,于是想到利用Python读取MongoDB数据来解决这一问题。 https://blog.csdn.net/ziyin_2013/article/details/111085953