zoukankan      html  css  js  c++  java
  • 使用Feign访问接口

     添加主要依赖

    使用Feign访问接口的配置,如果服务不在Eureka上,可以不加Eureka的依赖,用在FeignClient上指定url的方式访问

    dependencies {
        compile('org.springframework.boot:spring-boot-starter-web')
        compile('org.springframework.cloud:spring-cloud-starter-feign')
        compile('org.springframework.cloud:spring-cloud-starter-eureka')
        compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.16.12'
        testCompile('org.springframework.boot:spring-boot-starter-test')
    }

    gradle配置文件

    
    buildscript {
        ext {
            springBootVersion = '1.5.8.RELEASE'
        }
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        }
    }
    
    apply plugin: 'java'
    apply plugin: 'org.springframework.boot'
    
    group = 'com.example'
    version = '0.0.1-SNAPSHOT'
    sourceCompatibility = 1.8
    
    repositories {
        mavenCentral()
    }
    
    
    dependencies {
        compile('org.springframework.boot:spring-boot-starter-web')
        compile('org.springframework.cloud:spring-cloud-starter-feign')
        compile('org.springframework.cloud:spring-cloud-starter-eureka')
        testCompile('org.springframework.boot:spring-boot-starter-test')
    }
    
    ext {
        springCloudVersion = 'Dalston.SR4'
    }
    dependencyManagement {
        imports {
            mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
        }
    }

    配置文件中Eureka地址

    (下面是yml文件的配置格式)

    eureka:
      client:
        enabled: true #访问eureka服务时要打开
        serviceUrl:
          defaultZone: http://localhost:8761/eureka/

    Application主类添加注解

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

    编写FeignClient接口

    dp-dealer-shop是指定的应用名,不用Eureka的话不可以这样做,可以用指定一个Name和Url的方式调用接口
    接口中不支持@GetMapping这样的简写,要用@RequestMapping的写法
    @FeignClient("dp-dealer-shop")
    
    public interface Feign {
        @RequestMapping(method = RequestMethod.GET, value = "/api/quotation/v0/sendLargeRegionMail")
        List<AuditEmailContentDto> getLargeRegionMailContent();
    }
  • 相关阅读:
    VA插件突然不能使用,彈出“the security key for....”
    【WIN10】Segoe MDL2 Assets
    【WIN10】WIN2D——圖層
    【WIN10】WIN2D——圖像處理
    【WIN10】WIN2D——繪製文字
    【WIN10】WIN2D——基本圖形的繪製
    為你的文件夾添加“使用CMD命令打開”菜單
    【WIN10】移植opencc到WIN10-UWP,實現自己的繁簡轉換工具
    【WIN10】判斷程序運行在哪個平台
    【WIN10】使用VS生成appx安裝包,並安裝測試
  • 原文地址:https://www.cnblogs.com/longling2344/p/7764540.html
Copyright © 2011-2022 走看看