美文网首页
03 nacos-远程调用

03 nacos-远程调用

作者: 张力的程序园 | 来源:发表于2021-02-11 09:52 被阅读0次

    上一节我们在nacos上注册了服务,这一节我们尝试去调用该服务。

    1、前提约束

    • 已经在nacos上注册了一个服务

    2、操作步骤

    • 创建一个springboot项目,加入以下依赖:
            <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-discovery</artifactId>
            </dependency>
    

    注意:笔者使用的spring-boot版本是2.3.7.RELEASE,spring-cloud-alibaba版本是2.2.2.RELEASE

    • 修改application.properties:
    spring.application.name=nacos-consumer
    spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
    server.port=10002
    
    • 在主启动类同级目录下创建一个配置类:
    import org.springframework.cloud.client.loadbalancer.LoadBalanced;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.client.RestTemplate;
    
    @Configuration
    public class NacosConfig {
    
        @LoadBalanced
        @Bean
        public RestTemplate restTemplate() {
            return new RestTemplate();
        }
    }
    
    • 在主启动类同级目录下创建入口类:
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    import org.springframework.web.client.RestTemplate;
    
    import javax.annotation.Resource;
    
    @RestController
    public class TestController {
    
        @Resource
        private RestTemplate restTemplate;
    
        @GetMapping("/test")
        public String test(){
            return  restTemplate.getForObject("http://nacos-provider/get", String.class);
        }
    }
    

    相关文章

      网友评论

          本文标题:03 nacos-远程调用

          本文链接:https://www.haomeiwen.com/subject/czpkxltx.html