最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringCloud Eureka Provider及Consumer的實(shí)現(xiàn)

 更新時(shí)間:2019年10月16日 11:07:59   作者:巡山小妖N  
這篇文章主要介紹了SpringCloud Eureka 提供者及調(diào)用者的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

Eureka-Provider 服務(wù)的提供者

新建一個(gè)服務(wù)提供者項(xiàng)目

1、導(dǎo)入pom文件

<properties>
    <java.version>1.8</java.version>
    <spring-cloud.version>Greenwich.SR3</spring-cloud.version>
  </properties>

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

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <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>
    </dependencies>
  </dependencyManagement>

  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>

2、在啟動(dòng)類上加注解

@SpringBootApplication
@EnableDiscoveryClient // 這個(gè)注解加不加都可以,因?yàn)镋ureka
public class EurekaProviderApplication {
  public static void main(String[] args) {
    SpringApplication.run(EurekaProviderApplication.class, args);
  }
}

上邊那個(gè)@EnableDiscoverClient 注解加不加都行的原因會(huì)在后邊表名

3、在Eureka-Provider項(xiàng)目中添加一個(gè)簡單的接口

@RestController
public class EurekaProviderController {
  @GetMapping("/provider")
  public String provider(@RequestParam String aaa){
    return "eureka-provider-return" + aaa;
  }
}

4、以上配置完成之后啟動(dòng)Eureka-Provider

啟動(dòng)后會(huì)在控制臺(tái)輸出

DiscoveryClient_EUREKA-PROVIDER/192.168.1.4:eureka-provider:8000: registering service...

​同時(shí)看localhost:8761 頁面的Instance currently registered 會(huì)多出一條信息

Application AMIs Availability Zones Status

EUREKA-PROVIDER n/a (1) (1) UP (1) - 192.168.1.4:eureka-provider:8000

Eureka-Consumer 服務(wù)的調(diào)用者

調(diào)用者的配置和上邊提供者類似,applicatioin.yml配置修改server.port=8100

1、啟動(dòng)類修改

@SpringBootApplication  // 另一個(gè)發(fā)現(xiàn)服務(wù)的注解可以不用謝(SpringCloud版本要在Edgware之后)
public class EurekaConsumerApplication {
  @Bean
  @LoadBalanced
  RestTemplate restTemplate(){
    return new RestTemplate();
  }
  public static void main(String[] args) {
    SpringApplication.run(EurekaConsumerApplication.class, args);
  }
}

2、編寫一個(gè)調(diào)用接口的類

@RestController
public class EurekaConsumerController {
  @Autowired
  private RestTemplate restTemplate;
  @GetMapping("/consumer")
  @GetMapping("/consumer")
  public String consumer(@RequestParam String aaa){
    return restTemplate.getForObject("http://EUREKA-PROVIDER/provider?aaa=" + aaa,String.class );
  }
}

3、啟動(dòng)服務(wù)調(diào)用者

​ 啟動(dòng)后,調(diào)用調(diào)用者的觸發(fā)地址localhost:8100/consumer?aaa=consumerSemdParamter

​ 瀏覽器顯示內(nèi)容:

eureka-provider-returnconsumerSemdParamter

上邊遺留的一個(gè)問題,eureka-client不加@EnableDiscoveryClient以將自己注冊到注冊中心

先看EurekaClientAutoConfiguration類中

@Configuration
@EnableConfigurationProperties
@ConditionalOnClass(EurekaClientConfig.class)
@Import(DiscoveryClientOptionalArgsConfiguration.class)
@ConditionalOnBean(EurekaDiscoveryClientConfiguration.Marker.class)
@ConditionalOnProperty(value = "eureka.client.enabled", matchIfMissing = true)
@ConditionalOnDiscoveryEnabled
@AutoConfigureBefore({ NoopDiscoveryClientAutoConfiguration.class,
   CommonsClientAutoConfiguration.class, ServiceRegistryAutoConfiguration.class })
@AutoConfigureAfter(name = {
   "org.springframework.cloud.autoconfigure.RefreshAutoConfiguration",
   "org.springframework.cloud.netflix.eureka.EurekaDiscoveryClientConfiguration",
   "org.springframework.cloud.client.serviceregistry.AutoServiceRegistrationAutoConfiguration" })
public class EurekaClientAutoConfiguration {
}

可以看到該類加載的條件是需要有EurekaDiscoveryClientConfiguration.Maker.class的Bean存在,并且eureka.client.enabled為true,因?yàn)樵撝的J(rèn)為true,所以不需要關(guān)注,因此重要的就是EurekaDiscoveryClientConfiguration.Maker.class這個(gè),而這個(gè)類在Dalston之前的舊版本是不會(huì)自動(dòng)加載的,而在Edgware之后,該類就配置到spring.factories文件中了,改文件中所配置的bean在springboot啟動(dòng)的時(shí)候就會(huì)被加載(所以不需要手動(dòng)配上注冊服務(wù)的注解了,springboot會(huì)自動(dòng)配置)

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中Range函數(shù)的簡單介紹

    Java中Range函數(shù)的簡單介紹

    這篇文章主要介紹了Java中Range函數(shù)的簡單介紹,Java中的range方法用于返回IntStream和LongStream在函數(shù)參數(shù)范圍內(nèi)的順序值
    2022-07-07
  • Java全面分析面向?qū)ο笾^承

    Java全面分析面向?qū)ο笾^承

    繼承就是可以直接使用前輩的屬性和方法。自然界如果沒有繼承,那一切都是處于混沌狀態(tài)。多態(tài)是同一個(gè)行為具有多個(gè)不同表現(xiàn)形式或形態(tài)的能力。多態(tài)就是同一個(gè)接口,使用不同的實(shí)例而執(zhí)行不同操作
    2022-04-04
  • 解決java轉(zhuǎn)義json出現(xiàn)\u0000 等亂碼的問題

    解決java轉(zhuǎn)義json出現(xiàn)\u0000 等亂碼的問題

    這篇文章主要介紹了解決java轉(zhuǎn)義json出現(xiàn)\u0000 等亂碼的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • java微信掃碼支付模式一線下支付功能實(shí)現(xiàn)

    java微信掃碼支付模式一線下支付功能實(shí)現(xiàn)

    本篇文章主要介紹了JAVA微信掃碼支付模式一線下支付功能實(shí)現(xiàn),具有一定的參考價(jià)值,有需要的可以了解一下。
    2016-11-11
  • Java實(shí)現(xiàn)占位符名稱替換值

    Java實(shí)現(xiàn)占位符名稱替換值

    占位符現(xiàn)在應(yīng)該說是比較流行的動(dòng)態(tài)賦值,本文主要介紹了Java占位符名稱替換值,根據(jù)一串帶著參數(shù)名占位符的url,替換掉對(duì)應(yīng)參數(shù)名的值,感興趣的可以了解一下
    2021-07-07
  • Java?HashMap中除了死循環(huán)之外的那些問題

    Java?HashMap中除了死循環(huán)之外的那些問題

    這篇文章主要介紹了Java?HashMap中除了死循環(huán)之外的那些問題,這些問題大致可以分為兩類,程序問題和業(yè)務(wù)問題,下面文章我們一個(gè)一個(gè)來看,需要的小伙伴可以參考一下
    2022-05-05
  • Java最常用的6個(gè)簡單的計(jì)算題

    Java最常用的6個(gè)簡單的計(jì)算題

    本篇文章給大家整理的在JAVA中最常用到的簡單的計(jì)算題,對(duì)此有興趣的朋友可以測試參考下。
    2018-02-02
  • Spring根據(jù)URL參數(shù)進(jìn)行路由的方法詳解

    Spring根據(jù)URL參數(shù)進(jìn)行路由的方法詳解

    這篇文章主要給大家介紹了關(guān)于Spring根據(jù)URL參數(shù)進(jìn)行路由的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起來看看吧。
    2017-12-12
  • Mybatis之@MapKey的實(shí)現(xiàn)

    Mybatis之@MapKey的實(shí)現(xiàn)

    本文介紹了Mybatis中@MapKey注解的使用場景與效果,包含使用@MapKey和不使用@MapKey注解的區(qū)別,然后通過源碼解析產(chǎn)生各種結(jié)果的原因,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-09-09
  • java中的String定義的字面量最大長度是多少

    java中的String定義的字面量最大長度是多少

    這篇文章主要介紹了java中的String定義的字面量最大長度是多少,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12

最新評(píng)論

辽中县| 斗六市| 德阳市| 合江县| 平顶山市| 社旗县| 亚东县| 南皮县| 博客| 彰武县| 壤塘县| 威远县| 龙门县| 东港市| 夏河县| 荔波县| 昭觉县| 通海县| 邹平县| 北安市| 剑阁县| 江西省| 蓬安县| 陇西县| 镇原县| 巧家县| 大余县| 茂名市| 余江县| 汨罗市| 鞍山市| 葵青区| 遵化市| 浦城县| 闸北区| 保定市| 玛多县| 大新县| 吕梁市| 乐山市| 普洱|