java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > springCloud集成nacos config

springCloud集成nacos config的过程

作者:stars

本文介绍spring cloud集成nacos config的过程,通过实例代码图文相结合给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧

本文介绍spring cloud集成nacos config的过程。

0、环境

1、项目结构

根项目nacos-config-sample下有两个module,这两个module分别是两个springboot项目,都从nacos中获取连接mysql的连接参数。我们开工。

2、添加nacos-config-sample依赖

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.2</version>
    </parent>
	<!--两个module,新增module时,idea会自动生成,手动加可以-->
	<modules>
        <module>service-a</module>
        <module>service-b</module>
    </modules>
	<properties>
		<nacos.config.version>2021.1</nacos.config.version>
        <spring.bootstrap.version>3.0.1</spring.bootstrap.version>
    </properties>
     <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>${nacos.config.version}</version>
        </dependency>
		<!--用于读取bootstrap文件-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
            <version>${spring.bootstrap.version}</version>
        </dependency>
		<!--jpa-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

3、新增service-a

新增service-a,打卡pom.xml,看一下maven继承关系是否正取,代码如下:

<parent>
        <artifactId>nacos-config-sample</artifactId>
        <groupId>com.jackie.nacos.config.sample</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>

如果继承关系没错,下来添加springboot启动类,代码如下:

@SpringBootApplication
public class ServiceaApplication {
    public static void main(String[] args) {
        ConfigurableApplicationContext context = SpringApplication.run(ServiceaApplication.class, args);
        String info = context.getEnvironment().getProperty("info");
        System.out.println(info);
    }
}

我在这里添加了测试代码。下面添加bootstrap.yml文件,内容如下:

spring:
  application:
    name: nacos-config-sample-service-a
  cloud:
    nacos:
      config:
        # nacos的连接地址
        server-addr: localhost:8848
		# nacos config的dataId,如果不配置,默认读取application.name
        prefix: example
        namespace: dev
        file-extension: yml

再添加application.yml,内容如下:

server:
  port: 9080

service-a搭建完成,要测试的话,大家可以先把根服务中的jpa依赖先注释掉,否则启动不起来。因为sping自动装配,会去找数据库连接池,再找mysql的连接信息。而此时我们还没配置呢。咱们放到最后再配置。

4、service-b搭建

sevice-b搭建过程与service-a基本类似,唯一不同的是,记得把服务端口改一下,其他保持一致即可。

#application.yml
server:
  port: 9081

5、nacos config配置

登录nacos,进入配置管理,新增配置。Data ID:example.yml,Group: DEFAULT_GROUP,类型选择yml,配置内容按如下内容输入:

disableCouponRequest:true
spring:
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://127.0.0.1:3306/my_coupon?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true&zeroDateTimeBehavior=convertToNull&serverTimezone=UTC
    type: com.zaxxer.hikari.HikariDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    hikari:
      pool-name: StrasCouponHikari
      connection-timeout: 5000
      idle-timeout: 30000
      maximum-pool-size: 10
      minimum-idle: 5
      max-lifetime: 60000
      auto-commit: true

保存即可。

6、测试

现在我们分别启动两个服务,并查看日志,如果正常连接了mysql,说明我们的配置成功了。当然前提是你必须有对应的数据库,并且用户名、密码正确。

第一个红框表示正常加载了jpa,第二个红框说订阅了我们刚才新增的配置。好了,就到这里吧,享受你的探险之旅吧。加油,架构师们。

到此这篇关于springCloud集成nacos config的文章就介绍到这了,更多相关springCloud集成nacos config内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文