【十二】Spring Cloud Alibaba Nacos

注意使用的版本,有些小坑,版本不对,服务都注册不上

  • spring cloud 使用的Greenwich.SR1
  • spring boot 使用的 2.1.3.RELEASE
  • nacos的版本为0.2.1.RELEASE
  • 如果cloud的版本低了,则可能注册不上去

1.Nacos作为注册中心

1.1 加入对应的pom依赖

<!--加入spring Cloud 基础版本-->
    <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>

            <!--加入spring Cloud alibaba-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>0.2.1.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

1.2 添加注册中心的依赖

<!--阿里巴巴服务注册发现-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

1.3 增加配置文件配置

spring.application.name=demo-alibaba-springcloud-nacos
server.port=8888
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

1.4 增加注册代码

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

@EnableDiscoveryClient //打开服务发现
@SpringBootApplication
public class DemoAlibabaSpringcloudNacosApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoAlibabaSpringcloudNacosApplication.class, args);
    }

}

1.5 启动Nacos

sh startup.sh -m standalone

打开地址:
http://127.0.0.1:8848/nacos/#/login
用户名密码:nacos/nacos

image.png

2.Nacos作为配置中心

2.1 首先配置一个服务的配置文件

注意,配置的DataId一定是服务的名字+properties来组成

image.png

2.2 增加POM的依赖

<!--阿里巴巴配置中心-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>

        <!--阿里巴巴服务注册发现-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

2.3 增加配置文件bootstrap.properties

spring.application.name=demo-alibaba-springcloud-nacos
server.port=8888
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

spring.cloud.nacos.config.server-addr=127.0.0.1:8848

2.4 增加对应的代码和刷新功能

@RestController
@RefreshScope
public class NacosController {


    @Value("${user.name}")
    private String userName ;

    @Value("${user.age}")
    private String userAge ;

    @GetMapping("/get")
    public Object  test(){

        return "hello word";
    }

    @GetMapping("/get2")
    public Object  test2(){

        return  userAge + userName ;
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容