• springboot+nacos


    1. 这里使用的spring boot版本是2.6.1,为了兼容springcloud,所以spring cloud的版本是2021的。引入依赖

    <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-jpa</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-thymeleaf</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-websocket</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-redis</artifactId>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-pool2</artifactId>
            </dependency>
    
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <scope>runtime</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>com.vaadin.external.google</groupId>
                <artifactId>android-json</artifactId>
                <version>0.0.20131108.vaadin1</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.83</version>
            </dependency>
    
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.20</version>
            </dependency>
    
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpclient</artifactId>
                <version>4.5.6</version>
            </dependency>
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpmime</artifactId>
                <version>4.5.6</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-loadbalancer</artifactId>
            </dependency>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            </dependency>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-bootstrap</artifactId>
            </dependency>
            <!--<dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-config</artifactId>
            </dependency>-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid-spring-boot-starter</artifactId>
                <version>1.2.8</version>
            </dependency>
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>3.5.1</version>
            </dependency>
    
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>3.12.0</version>
            </dependency>
    
            <dependency>
                <groupId>com.wisdge</groupId>
                <artifactId>wisdge.web</artifactId>
                <version>1.9.3</version>
            </dependency>
            <dependency>
                <groupId>com.wisdge</groupId>
                <artifactId>wisdge.dataservice</artifactId>
                <version>1.4.6</version>
            </dependency>
            <dependency>
                <groupId>net.sf.json-lib</groupId>
                <artifactId>json-lib</artifactId>
                <version>2.4</version>
                <classifier>jdk15</classifier>
            </dependency>
        </dependencies>
    
        <dependencyManagement>
            <dependencies>
                <dependency>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-dependencies</artifactId>
                    <version>${spring-cloud.version}</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
                <dependency>
                    <groupId>com.alibaba.cloud</groupId>
                    <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                    <version>${spring-cloud-alibaba.version}</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
                <dependency>
                    <groupId>com.alibaba</groupId>
                    <artifactId>fastjson</artifactId>
                    <version>1.2.83</version>
                </dependency>
            </dependencies>
    
        </dependencyManagement>
        <build>
            <finalName>ngs.filter</finalName>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                </plugin>
            </plugins>
        </build>

    跟nacos有关的依赖就两个,要注意这里引得是alibaba的。

    还有要注意的一点就是因为springboot版本的问题,在使用bootstrap.yml这个配置文件的时候,需要额外引入一个依赖

     这样准备环境就可以了。接下来去配置bootstrap.yml。

    nacos-server-addr: localhost:8848
    nacos-namespace: public
    nacos-config-group: DEFAULT_GROUP
    
    spring:
      application:
        name: LocalTest
      #  profiles:
      #    active: ${env}
    
      cloud:
        nacos:
          discovery:
            enabled: true
            server-addr: ${nacos-server-addr}
            namespace: ${nacos-namespace}
          config:
            enabled: true # 如果不想使用 Nacos 进行配置管理,设置为 false 即可
            server-addr: ${nacos-server-addr} # Nacos Server 地址
            group: ${nacos-config-group} # 组,默认为 DEFAULT_GROUP
            file-extension: yaml # 配置内容的数据格式,默认为 properties
            namespace: ${nacos-namespace}

    spring.application.name即为注册上去的服务名,这里使用的还是nacos默认的命名空间跟组,想修改的话需要在nacos上创建新的命名空间跟组。启动项目发现已经注册上去了

     要注意的一点是,这里是做为一个服务,如果要关联起来,起到读nacos上配置的话,需要在配置管理里面加一个对应的配置。

           在这里配置yaml文件会取代本地的yml配置内容,会优先读取nacos里面的配置。曾经就遇到一个问题,本地端口修改为8084,项目注册了服务到nacos上,启动第二个8081端口的项目一直说8081端口被占用。后面才发现是因为nacos的原因,读取的是nacos里面的配置端口。。。

          到这里springboot整合nacos就结束了,简单捋一下过程。引入nacos的相关依赖,配置bootstrap文件,本地启动nacos,再启动项目即可。要注意的是修改nacos上的配置文件,需要重新启动项目才会生效。

  • 相关阅读:
    在做5道习题,个别习题有难度,需要很多天,加油把自己,有看到这个随笔的小伙伴评论可以留言讨论或发出你的答案~
    python中的open、close、read、write、len、exists
    python中的type
    python中strip、startswith、endswith
    python3_learn 实现文件夹内批量对图片重命名
    [转载]利用分块传输绕过WAF进行SQL注入
    bypass安全狗测试学习
    [转+自]SSH工作原理
    NCTF2019 小部分题解
    XML外部实体注入[转载]
  • 原文地址:https://www.cnblogs.com/shitechnology/p/16404476.html
Copyright © 2020-2023  润新知