更新时间:2024-10-23 GMT+08:00
分享

SpringBoot项目接入MAS-Mongo-SDK

  1. MAS-Mongo-SDK使用Maven获取相关,根据实际情况设置Maven远程仓库地址等相关配置。
  2. 在pom.xml文件中引入以下依赖,下面mas.version版本为最新版本,依赖组件版本参考如何选择组件版本

    <properties>
        <!--以最新的版本号为准-->
        <mas.version>1.3.0-RELEASE</mas.version>
    </properties>
    <dependency>
        <groupId>com.huaweicloud.devspore</groupId>
        <artifactId>spring-cloud-starter-huawei-devspore-dds</artifactId>
        <version>${mas.version}</version>
    </dependency>

  3. 参考配置文件示例application.yaml,配置参数参考配置参数说明

    在项目的application.yaml中添加以下配置项:
    devspore:
      dds:
        # 基础信息 - 可选,当配置etcd后必选
        props:
          version: v1 #项目版本号,自定义
          app-id: xxxx #应用id,从MAS服务实例页面查询获取
          monitor-id: xxxx #监控器id,从MAS服务实例页面查询获取MAS监控id
          databaseName: xxxx #MAS监控的Mongo数据库
          cloud: xxxx
          region: xxxx
          azs: az1 
        # etcd配置,对接MAS服务关键配置,如不对接MAS则无需配置
        etcd: 
          address: 127.0.0.1:2379 #etcd地址,从MAS服务实例页面查询获取
          api-version: v3 #etcd版本,v3
          username: etcduser #etcd用户名,从MAS服务实例页面查询获取
          password: etcdpwd #etcd密码,从MAS服务实例页面查询获取
          https-enable: true #是否启用https,默认为false
          certificatePath: xxx #当启用https时证书路径,实例未开启双向认证或者不启用https场景,此项可不填
        # mongo数据源配置 - 必选    
    sources:
          dc1:
            username: dc1user #mongo用户名
            password: dc2pwd #mongo密码
            url: mongodb://127.0.0.1:29017/mongo1 #mongo连接串(注意不能带用户名密码)
            azs: az1 #此mongo数据库所属AZ
          dc2:
            username: dc2user #mongo用户名
            password: dc2pwd #mongo密码
            url: mongodb://127.0.0.1:29018/mongo1 #mongo连接串(注意不能带用户名密码)
            azs: az2 #此mongo数据库所属AZ
        active: dc1
        routeStrategy: local-read-single-write #路由策略

  4. 在需要执行Mongo操作的地方引入Cluster(替代原有的MongoClient)或者MongoTemplate,执行相关的Mongo操作。

    举例:

    @Autowired
    private Cluster cluster;
    
    @Autowired
     MongoTemplate mongoTemplate;

相关文档