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

Spring Cloud使用Feign實(shí)現(xiàn)Form表單提交的示例

 更新時(shí)間:2018年03月28日 10:29:22   作者:周立  
本篇文章主要介紹了Spring Cloud使用Feign實(shí)現(xiàn)Form表單提交的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

之前,筆者寫(xiě)了《使用Spring Cloud Feign上傳文件》。近日,有同事在對(duì)接遺留的Struts古董系統(tǒng),需要使用Feign實(shí)現(xiàn)Form表單提交。其實(shí)步驟大同小異,本文附上步驟,算是對(duì)之前那篇的補(bǔ)充。

添加依賴:

<dependency>
 <groupId>io.github.openfeign.form</groupId>
 <artifactId>feign-form</artifactId>
 <version>3.2.2</version>
</dependency>
<dependency>
 <groupId>io.github.openfeign.form</groupId>
 <artifactId>feign-form-spring</artifactId>
 <version>3.2.2</version>
</dependency>

Feign Client示例:

@FeignClient(name = "xxx", url = "http://www.itmuch.com/", configuration = TestFeignClient.FormSupportConfig.class)
public interface TestFeignClient {
  @PostMapping(value = "/test",
      consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE},
      produces = {MediaType.APPLICATION_JSON_UTF8_VALUE}
      )
  void post(Map<String, ?> queryParam);
  class FormSupportConfig {
    @Autowired
    private ObjectFactory<HttpMessageConverters> messageConverters;
    // new一個(gè)form編碼器,實(shí)現(xiàn)支持form表單提交
    @Bean
    public Encoder feignFormEncoder() {
      return new SpringFormEncoder(new SpringEncoder(messageConverters));
    }
    // 開(kāi)啟Feign的日志
    @Bean
    public Logger.Level logger() {
      return Logger.Level.FULL;
    }
  }
}

調(diào)用示例:

@GetMapping("/user/{id}")
public User findById(@PathVariable Long id) {
 HashMap<String, String> param = Maps.newHashMap();
 param.put("username","zhangsan");
 param.put("password","pwd");
 this.testFeignClient.post(param);
 return new User();
}

日志:

...[TestFeignClient#post] ---> POST http://www.baidu.com/test HTTP/1.1
...[TestFeignClient#post] Accept: application/json;charset=UTF-8
...[TestFeignClient#post] Content-Type: application/x-www-form-urlencoded; charset=UTF-8
...[TestFeignClient#post] Content-Length: 30
...[TestFeignClient#post]
...[TestFeignClient#post] password=pwd&username=zhangsan
...[TestFeignClient#post] ---> END HTTP (30-byte body)

由日志可知,此時(shí)Feign已能使用Form表單方式提交數(shù)據(jù)。

參考文檔
https://github.com/OpenFeign/feign-form
https://stackoverflow.com/questions/35803093/how-to-post-form-url-encoded-data-with-spring-cloud-feign

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

相關(guān)文章

  • 詳解如何通過(guò)Java實(shí)現(xiàn)壓縮PDF文檔

    詳解如何通過(guò)Java實(shí)現(xiàn)壓縮PDF文檔

    PDF文檔是我們?nèi)粘^k公中使用最頻繁的文檔格式。但因?yàn)榇蠖鄶?shù)PDF文檔都包含很多頁(yè)面圖像或大量圖片,這就導(dǎo)致PDF文檔過(guò)大,處理起來(lái)較為麻煩。本文將介紹如何通過(guò)Java應(yīng)用程序壓縮PDF文檔,需要的可以了解一下
    2022-12-12
  • 使用springboot整合websocket實(shí)現(xiàn)群聊教程

    使用springboot整合websocket實(shí)現(xiàn)群聊教程

    websocket怎么說(shuō)呢,就是服務(wù)器可以主動(dòng)向客戶端發(fā)起對(duì)話,下面就是springboot整合websocket實(shí)現(xiàn)群聊的操作代碼,一起來(lái)看一下get新技能吧
    2021-08-08
  • SpringBoot實(shí)現(xiàn)熱部署詳解

    SpringBoot實(shí)現(xiàn)熱部署詳解

    SpringBoot熱部署是一種開(kāi)發(fā)時(shí)極為有用的功能,它能夠讓開(kāi)發(fā)人員在代碼修改后無(wú)需手動(dòng)重啟應(yīng)用程序就能立即看到變化的效果,所以我本文就給打擊介紹一下為什么要使用熱部署以及實(shí)現(xiàn)熱部署的方式,需要的朋友可以參考下
    2023-07-07
  • 使用Java的Graphics類進(jìn)行繪圖的方法詳解

    使用Java的Graphics類進(jìn)行繪圖的方法詳解

    這篇文章主要介紹了使用Java的Graphics類進(jìn)行繪圖的方法,是Java的GUI編程的基礎(chǔ),需要的朋友可以參考下
    2015-10-10
  • Springboot之restTemplate的配置及使用方式

    Springboot之restTemplate的配置及使用方式

    這篇文章主要介紹了Springboot之restTemplate的配置及使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • Spring?Data?JPA注解Entity使用示例詳解

    Spring?Data?JPA注解Entity使用示例詳解

    這篇文章主要為大家介紹了Spring?Data?JPA注解Entity使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • 全面解析Java觀察者模式

    全面解析Java觀察者模式

    這篇文章主要幫助大家全面解析Java觀察者模式,了解java設(shè)計(jì)模式中的觀察者模式,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Java基礎(chǔ)知識(shí)之StringWriter流的使用

    Java基礎(chǔ)知識(shí)之StringWriter流的使用

    這篇文章主要介紹了Java基礎(chǔ)知識(shí)之StringWriter流的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • SpringBoot2.6.3集成quartz的方式

    SpringBoot2.6.3集成quartz的方式

    quartz是java里頭定時(shí)任務(wù)的經(jīng)典開(kāi)源實(shí)現(xiàn),這里講述一下如何在SpringBoot2.6.3集成quartz,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-02-02
  • @MapperScan和@ComponentScan一塊使用導(dǎo)致沖突的解決

    @MapperScan和@ComponentScan一塊使用導(dǎo)致沖突的解決

    這篇文章主要介紹了@MapperScan和@ComponentScan一塊使用導(dǎo)致沖突的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11

最新評(píng)論

临泽县| 米易县| 登封市| 平和县| 共和县| 达拉特旗| 清涧县| 昭苏县| 无为县| 五河县| 金门县| 堆龙德庆县| 鹤壁市| 盖州市| 杭州市| 漾濞| 襄汾县| 历史| 南京市| 化隆| 寻甸| 五指山市| 舒城县| 泽州县| 玛沁县| 安乡县| 大化| 镇巴县| 邹城市| 台中县| 余庆县| 池州市| 上林县| 府谷县| 静乐县| 洪江市| 合水县| 鄱阳县| 唐河县| 渭南市| 灵川县|