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

SpringCloud中的openFeign調用服務并傳參的過程

 更新時間:2023年11月20日 15:06:06   作者:天道酬勤_smile  
服務和服務之間通信,不僅僅是調用,往往在調用過程中還伴隨著參數(shù)傳遞,接下來重點來看看OpenFeign在調用服務時如何傳遞參數(shù),感興趣的朋友一起看看吧

一、說明

服務和服務之間通信,不僅僅是調用,往往在調用過程中還伴隨著參數(shù)傳遞,接下來重點來看看OpenFeign在調用服務時如何傳遞參數(shù)

二、GET方式調用服務傳遞參數(shù)

1.GET方式調用服務傳遞參數(shù)

在商品服務中加入需要傳遞參數(shù)的服務方法來進行測試
在用戶服務中進行調用商品服務中需要傳遞參數(shù)的服務方法進行測試

// 1.商品服務中添加如下方法
 @GetMapping("/product/findOne")
public Map<String,Object> findOne(String productId){
  log.info("商品服務查詢商品信息調用成功,當前服務端口:[{}]",port);
  log.info("當前接收商品信息的id:[{}]",productId);
  Map<String, Object> map = new HashMap<String,Object>();
  map.put("msg","商品服務查詢商品信息調用成功,當前服務端口: "+port);
  map.put("status",true);
  map.put("productId",productId);
  return map;
}
//2.用戶服務中在product客戶端中聲明方法
@FeignClient("PRODUCTS")
public interface ProductClient { 
	@GetMapping("/product/findOne")
 	String findOne(@RequestParam("productId") String productId);
}
//3.用戶服務中調用并傳遞參數(shù)
//注入客戶端對象
@Autowired
private ProductClient productClient;
@GetMapping("/user/findAllFeignClient")
public String findAllFeignClient(){
  log.info("通過使用OpenFeign組件調用商品服務...");
  String msg = productClient.findAll();
  return msg;
}

三、post方式調用服務傳遞參數(shù)

1.post方式調用服務傳遞參數(shù)

- 在商品服務中加入需要傳遞參數(shù)的服務方法來進行測試
- 在用戶服務中進行調用商品服務中需要傳遞參數(shù)的服務方法進行測試

//1.商品服務加入post方式請求并接受name
@PostMapping("/product/save")
public Map<String,Object> save(String name){
  log.info("商品服務保存商品調用成功,當前服務端口:[{}]",port);
  log.info("當前接收商品名稱:[{}]",name);
  Map<String, Object> map = new HashMap<String,Object>();
  map.put("msg","商品服務查詢商品信息調用成功,當前服務端口: "+port);
  map.put("status",true);
  map.put("name",name);
  return map;
}
//2.用戶服務中在product客戶端中聲明方法
//value屬性用來指定:調用服務名稱
@FeignClient("PRODUCTS")
public interface ProductClient {
    @PostMapping("/product/save")
    String save(@RequestParam("name") String name);
}
//3.用戶服務中調用并傳遞參數(shù)
@Autowired
private ProductClient productClient;
@GetMapping("/user/save")
public String save(String productName){
  log.info("接收到的商品信息名稱:[{}]",productName);
  String save = productClient.save(productName);
  log.info("調用成功返回結果: "+save);
  return save;
}

2.傳遞對象類型參數(shù)

- 商品服務定義對象
- 商品服務定義對象接收方法
- 用戶服務調用商品服務定義對象參數(shù)方法進行參數(shù)傳遞

//1.商品服務定義對象
@Data
public class Product {
    private Integer id;
    private String name;
    private Date bir;
}
//2.商品服務定義接收對象的方法
@PostMapping("/product/saveProduct")
public Map<String,Object> saveProduct(@RequestBody Product product){
  log.info("商品服務保存商品信息調用成功,當前服務端口:[{}]",port);
  log.info("當前接收商品名稱:[{}]",product);
  Map<String, Object> map = new HashMap<String,Object>();
  map.put("msg","商品服務查詢商品信息調用成功,當前服務端口: "+port);
  map.put("status",true);
  map.put("product",product);
  return map;
}
//3.將商品對象復制到用戶服務中
//4.用戶服務中在product客戶端中聲明方法
@FeignClient("PRODUCTS")
public interface ProductClient {
  @PostMapping("/product/saveProduct")
  String saveProduct(@RequestBody Product product);
}
// 4.在用戶服務中調用保存商品信息服務
//注入客戶端對象
@Autowired
private ProductClient productClient;
@GetMapping("/user/saveProduct")
public String saveProduct(Product product){
  log.info("接收到的商品信息:[{}]",product);
  String save = productClient.saveProduct(product);
  log.info("調用成功返回結果: "+save);
  return save;
}

到此這篇關于SpringCloud之openFeign調用服務并傳參的文章就介紹到這了,更多相關SpringCloud openFeign調用服務內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java如何通過反射機制獲取數(shù)據(jù)類對象的屬性及方法

    Java如何通過反射機制獲取數(shù)據(jù)類對象的屬性及方法

    文章介紹了如何使用Java反射機制獲取類對象的所有屬性及其對應的get、set方法,以及如何通過反射機制實現(xiàn)類對象的實例化,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • 實例解析使用Java實現(xiàn)基本的音頻播放器的編寫要點

    實例解析使用Java實現(xiàn)基本的音頻播放器的編寫要點

    這篇文章主要介紹了使用Java實現(xiàn)基本的音頻播放器的代碼要點實例分享,包括音頻文件的循環(huán)播放等功能實現(xiàn)的關鍵點,需要的朋友可以參考下
    2016-01-01
  • Spring?Boot?使用?Hutool-jwt?實現(xiàn)?token?驗證功能

    Spring?Boot?使用?Hutool-jwt?實現(xiàn)?token?驗證功能

    JWT?就是一種網(wǎng)絡身份認證和信息交換格式,這篇文章主要介紹了Spring Boot使用Hutool-jwt實現(xiàn)token驗證,需要的朋友可以參考下
    2023-07-07
  • jdk源碼閱讀Collection詳解

    jdk源碼閱讀Collection詳解

    這篇文章主要介紹了jdk源碼閱讀Collection詳解,具有一定借鑒價值,需要的朋友可以參考下
    2017-12-12
  • 詳解SpringBoot基礎之banner玩法解析

    詳解SpringBoot基礎之banner玩法解析

    SpringBoot項目啟動時會在控制臺打印一個默認的啟動圖案,這個圖案就是我們要講的banner,這篇文章主要介紹了SpringBoot基礎之banner玩法解析,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Java中類轉json的基類實現(xiàn)

    Java中類轉json的基類實現(xiàn)

    這篇文章主要介紹了Java中類轉json的基類實現(xiàn),需要的朋友可以參考下
    2021-01-01
  • 基于Spring實現(xiàn)零重啟自由編排任務的定時管理器

    基于Spring實現(xiàn)零重啟自由編排任務的定時管理器

    我們發(fā)現(xiàn),我們使用Spring自帶的定時任務如果要有修改,那么就要修改代碼,然后重啟項目,所以本文就帶大家實現(xiàn)一個零重啟自由編排任務的定時管理器吧
    2023-07-07
  • tk-mybatis 的使用方法詳解

    tk-mybatis 的使用方法詳解

    tkmybatis是在mybatis框架的基礎上提供了很多工具,本文就詳細的介紹了一下tk-mybatis 的使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Java使用LinkedHashMap進行分數(shù)排序

    Java使用LinkedHashMap進行分數(shù)排序

    這篇文章主要介紹了Java使用LinkedHashMap進行分數(shù)排序的相關代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Logstash配置Java日志格式的方法小結

    Logstash配置Java日志格式的方法小結

    Logstash 是用于日志收集的開源工具,通常與 Elasticsearch 和 Kibana 一起使用,形成 ELK Stack,Logstash 非常靈活,可以通過配置文件(通常是 .conf 文件)來定義數(shù)據(jù)的輸入、處理和輸出,本文給大家介紹了Logstash配置Java日志格式的方法,需要的朋友可以參考下
    2024-09-09

最新評論

囊谦县| 正定县| 林甸县| 内丘县| 泰和县| 扬州市| 淮安市| 河源市| 开平市| 汝州市| 丹东市| 山东| 汨罗市| 无棣县| 牡丹江市| 怀远县| 黔南| 姚安县| 平塘县| 正阳县| 怀来县| 平凉市| 周宁县| 渭南市| 大安市| 南丹县| 晋州市| 鹿邑县| 博客| 会昌县| 长白| 瑞金市| 阳江市| 华池县| 乌审旗| 鹿邑县| 巴中市| 合作市| 沙河市| 嫩江县| 三门峡市|