Feign声明式服务调用

1.pom.xml

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>

2.application.properties配置

server.port=8080
spring.application.name=feign1
eureka.client.service-url.defaultZone=http://localhost:7777/eureka

3.定义接口

package org.huqi.springcloudserver1;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;

//value 服务名称
@FeignClient(value = "service1")
public interface FeignService1 {
    @RequestMapping("/index1")
    String test1();
}

4.远程调用代码

@RestController
public class ConsumerController {

    @Autowired
    FeignService feignService;

    @RequestMapping("/consumer")
    public String helloConsumer(){
        return feignService.hello();
    }
}

5.调用类

package org.huqi.springcloudserver1;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class TestController {
    @Autowired
    FeignService1 feign;

    @RequestMapping("/test1")
    public String test1(){
        return "其他调用"+feign.test1();
    }
}

6.启动类

package org.huqi.springcloudserver1;


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

@EnableDiscoveryClient
@EnableFeignClients
@SpringBootApplication
public class Springcloudserver1Application {
    public static void main(String[] args) {
        SpringApplication.run(Springcloudserver1Application.class, args);
    }
}

 

posted @ 2020-06-21 16:56  动力起点  阅读(176)  评论(0编辑  收藏  举报