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

SpringCloud OpenFeign超詳細(xì)講解模板化遠(yuǎn)程通信的實(shí)現(xiàn)

 更新時(shí)間:2022年07月12日 10:47:36   作者:有頭發(fā)的程序猿!  
這篇文章主要介紹了SpringCloudSpringboot集成OpenFeign實(shí)現(xiàn)模板化遠(yuǎn)程通信,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

1. openFeign實(shí)現(xiàn)

基于spring-boot-starter-parent 2.6.8,spring-cloud-dependencies 2021.0.3,一個(gè)order服務(wù)一個(gè)user服務(wù)

1.1 pom依賴

<!--nacos服務(wù)注冊(cè)與發(fā)現(xiàn)-->
<dependency>
	<groupId>com.alibaba.cloud</groupId>
	<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
	<version>2021.0.1.0</version>
</dependency>
<!--遠(yuǎn)程服務(wù)調(diào)用-->
<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-loadbalancer</artifactId>
</dependency>
<!--服務(wù)調(diào)用feign-->
<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

1.2 yaml配置

order調(diào)用端,配置的超時(shí)設(shè)置注釋掉了只為記錄

spring:
  application:
    name: orderservice
  cloud:
    #找對(duì)應(yīng)網(wǎng)段的網(wǎng)卡 不配置內(nèi)部服務(wù)就走外網(wǎng)
    inetutils:
      preferred-networks: 192.168.0
    nacos:
      discovery:
        server-addr: 192.168.0.221:8848
#feign:
#  client:
#    config:
#      #default設(shè)置的是全局超時(shí)時(shí)間,對(duì)所有的openFeign接口服務(wù)都生效 默認(rèn)60s超時(shí)
#      default:
#        connectTimeout: 5000
#        readTimeout: 5000
#      #為某個(gè)服務(wù)設(shè)置超時(shí)時(shí)間 優(yōu)先于全局
#      userservice:
#        connectTimeout: 5000
#        readTimeout: 5000

user服務(wù)僅需要注冊(cè)

spring:
  application:
    name: userservice
  cloud:
    #找對(duì)應(yīng)網(wǎng)段的網(wǎng)卡 不配置內(nèi)部服務(wù)就走外網(wǎng)
    inetutils:
      preferred-networks: 192.168.0
    nacos:
      discovery:
        server-addr: 192.168.0.221:8848

遠(yuǎn)程調(diào)用依賴于注冊(cè)中心,這里用的是nacos,其他的eureka也可以的

1.3 客戶端調(diào)用代碼

  • 啟動(dòng)類上添加@EnableFeignClients注解
  • api接口,可以單獨(dú)放在api包
@FeignClient(value = "userservice")
//沒(méi)有注冊(cè)中心的服務(wù)調(diào)用使用  testFeign/隨便寫
//@FeignClient(value = "testFeign",url = "http://192.168.0.199:7540")
public interface UserService {
    //默認(rèn)是@RequestBody注解參數(shù) 
    //如果使用其他注解一定要帶上value 否者會(huì)報(bào)錯(cuò) RequestParam.value() was empty on parameter 1
    @GetMapping("/getTime/{uuid}")
    String getTime(@PathVariable("uuid") String uuid, @RequestParam("name") String name);
    @PostMapping("/postTime")
    Map<String, Object> getTime(@RequestBody Map<String, Object> params);
}

客戶端代碼

	@Resource
    UserService userService;
    @GetMapping("/test")
    public String test() throws Exception {
        log.info("openFeign -- start");
        Map<String, Object> time = userService.getTime(resMap);
        log.info("openFeign -- {}", time);
        return template + ":" + time;
    }

1.4.服務(wù)端暴露接口

    @PostMapping("/postTime")
    public Map<String, Object> getTime(@RequestBody Map<String, Object> params) {
        params.put("time", new Date().getTime());
        return params;
    }

1.5.測(cè)試日志

c.e.order.controller.OrderController     : openFeign -- start
c.e.order.controller.OrderController     : openFeign -- {aaaa=bbbb, time=1657187048104}

到此這篇關(guān)于SpringCloud OpenFeign超詳細(xì)講解模板化遠(yuǎn)程通信的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)SpringCloud OpenFeign模板化遠(yuǎn)程通信內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java實(shí)現(xiàn)手寫一個(gè)線程池的示例代碼

    Java實(shí)現(xiàn)手寫一個(gè)線程池的示例代碼

    線程池技術(shù)想必大家都不陌生把,相信在平時(shí)的工作中沒(méi)有少用,而且這也是面試頻率非常高的一個(gè)知識(shí)點(diǎn),那么大家知道它的實(shí)現(xiàn)原理和細(xì)節(jié)嗎?本文就來(lái)通過(guò)手寫一個(gè)簡(jiǎn)單的線程池框架,去掌握線程池的基本原理,感興趣的可以學(xué)習(xí)一下
    2022-10-10
  • 使用Idea連接MySQL的詳細(xì)步驟總結(jié)

    使用Idea連接MySQL的詳細(xì)步驟總結(jié)

    今天給大家?guī)?lái)的是關(guān)于IDEA連接數(shù)據(jù)庫(kù)的問(wèn)題,文章圍繞著使用Idea連接MySQL的詳細(xì)步驟展開(kāi),文中有非常詳細(xì)的介紹及圖文示例,需要的朋友可以參考下
    2021-06-06
  • Java Servlet中Response對(duì)象的使用方法

    Java Servlet中Response對(duì)象的使用方法

    本文介紹了Java Servlet中Response對(duì)象的使用方法,包括設(shè)置響應(yīng)頭、設(shè)置響應(yīng)編碼、向客戶端發(fā)送數(shù)據(jù)、重定向等操作,同時(shí)介紹了常用的響應(yīng)狀態(tài)碼和響應(yīng)類型,幫助讀者更好地理解和掌握Servlet中Response對(duì)象的用法
    2023-05-05
  • Java實(shí)現(xiàn)AWT四大事件的詳細(xì)過(guò)程

    Java實(shí)現(xiàn)AWT四大事件的詳細(xì)過(guò)程

    AWT的事件處理是一種委派式事件處理方式:普通組件(事件源)將整個(gè)事件處理委托給特定的對(duì)象(事件監(jiān)聽(tīng)器);當(dāng)該事件源發(fā)生指定的事件時(shí),就通知所委托的事件監(jiān)聽(tīng)器,由事件監(jiān)聽(tīng)器來(lái)處理這個(gè)事件
    2022-04-04
  • java中ZXing 生成、解析二維碼圖片的小示例

    java中ZXing 生成、解析二維碼圖片的小示例

    ZXing 是一個(gè)開(kāi)源 Java 類庫(kù)用于解析多種格式的 1D/2D 條形碼,這篇文章主要介紹了java中ZXing 生成、解析二維碼圖片的小示例 ,有興趣的可以了解一下。
    2017-01-01
  • Java純代碼實(shí)現(xiàn)導(dǎo)出文件為壓縮包

    Java純代碼實(shí)現(xiàn)導(dǎo)出文件為壓縮包

    這篇文章主要為大家詳細(xì)介紹了Java如何代碼實(shí)現(xiàn)導(dǎo)出文件為壓縮包,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-02-02
  • Java控制流程示例代碼詳解

    Java控制流程示例代碼詳解

    這篇文章主要介紹了Java控制流程,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • 基于java中子類的繼承性的應(yīng)用介紹

    基于java中子類的繼承性的應(yīng)用介紹

    本篇介紹了,基于java中子類的繼承性的應(yīng)用。需要的朋友參考下
    2013-05-05
  • Java面試之如何實(shí)現(xiàn)10億數(shù)據(jù)判重

    Java面試之如何實(shí)現(xiàn)10億數(shù)據(jù)判重

    當(dāng)數(shù)據(jù)量比較大時(shí),使用常規(guī)的方式來(lái)判重就不行了,所以這篇文章小編主要來(lái)和大家介紹一下Java實(shí)現(xiàn)10億數(shù)據(jù)判重的相關(guān)方法,希望對(duì)大家有所幫助
    2024-02-02
  • maven 環(huán)境變量的配置詳解

    maven 環(huán)境變量的配置詳解

    這篇文章主要介紹了maven 環(huán)境變量的配置詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評(píng)論

商水县| 车致| 金湖县| 宜州市| 铁力市| 甘肃省| 襄樊市| 永城市| 山阳县| 锡林浩特市| 大悟县| 贵德县| 锡林郭勒盟| 孝感市| 云和县| 封开县| 桂平市| 昌宁县| 平谷区| 额敏县| 白沙| 巴彦淖尔市| 汤阴县| 林芝县| 瓮安县| 德阳市| 衡阳县| 全南县| 金坛市| 元氏县| 金昌市| 鄂托克前旗| 成安县| 周宁县| 芮城县| 五原县| 班戈县| 泰安市| 安国市| 泰宁县| 华阴市|