• 使用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();
    }
  • 相关阅读:
    HTML5就是现在:深入了解Polyfills
    dot.js-js模板引擎使用,教程,入门
    js操作dom对象
    JavaScript中this详解
    浅谈JavaScript中的string拥有方法的原因
    函数定义方式
    Jquery的跨域调用
    数据结构与算法之美-排序(下)
    CLR via C#学习笔记-第十三章-定义接口、继承接口
    CLR via C#学习笔记-第十二章-可验证性和约束
  • 原文地址:https://www.cnblogs.com/longling2344/p/7764540.html
Copyright © 2020-2023  润新知