(010)SpringBoot下RestTemplate的使用

一、引言

在多模塊開發(fā)中果覆,難免會(huì)出現(xiàn)模塊間的業(yè)務(wù)協(xié)作。若是直接依賴模塊畴栖,極大可能會(huì)出現(xiàn)模塊的相互依賴随静。為解決該問題,除使用 HttpClient遠(yuǎn)程訪問接口外吗讶,可以使用RestTemplate訪問rest服務(wù)燎猛,可以減少建立連接時(shí)間。

二照皆、應(yīng)用

1重绷、配置maven依賴

<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
</dependency>

2、注冊(cè)RestTemplate
?????從SpringBoot2.0開始膜毁,無法直接注入RestTemplate昭卓。

/**
 * @author lindm
 *
 * 該類的作用是提供spring配置
 * @Configuration 標(biāo)識(shí)該類是一個(gè)spring配置類
 * @ComponentScan 默認(rèn)掃描該包及子包下的spring的組件
 * @EnableTransactionManagement 啟用事務(wù)管理
 * @EnableAutoConfiguration 啟用spring boot的自動(dòng)配置
 */
@Configuration
@ComponentScan
@EnableTransactionManagement
@EnableAutoConfiguration
public class DemoConfiguration {
    public static void main(String[] args) {
        SpringApplication.run(DocBusinessConfiguration.class, args);
    }

    @Bean
    RestTemplate restTemplate(RestTemplateBuilder restTemplateBuilder) {
        return restTemplateBuilder
                .setConnectTimeout(5000) //單位ms, 設(shè)置連接時(shí)間,避免線程過多被阻塞掛起瘟滨,導(dǎo)致整個(gè)系統(tǒng)宕機(jī)
                .setReadTimeout(5000)
                .build();
    }
}

3候醒、編寫API發(fā)送請(qǐng)求

package com.external.service.impl;

import com.external.service.DisToOthersMng;
import com.utils.exception.BusinessException;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.client.RestTemplate;

import javax.annotation.Resource;
import java.util.HashMap;

/**
 * 測(cè)試類
 *
 * @author lindm
 */
@Transactional(rollbackFor = Exception.class)
@Service
public class DisToOther{

    /**
    * 注入restTemplate
    */
    @Resource
    private RestTemplate withTokenRestTemplate;

    public boolean disToOthers(String type, String docId) {
        HashMap<String, Object> map;
        boolean result, fianl = true;
     
        switch (type) {
            case "archive":
                map = this.getToArchiveHashMap(docId);
                String url = "http://127.0.0.1:8080/archive/insertArchive";
                // 發(fā)送post請(qǐng)求,請(qǐng)求參數(shù)map,返回boolean類型值 
                result = this.withTokenRestTemplate.postForObject(url, map, boolean.class);
                if (!result) {
                    fianl = false;
                }
                break;
            default:
                break;
        }
        return fianl;
    }
}
四杂瘸、參考地址

1倒淫、鏈接地址: http://www.reibang.com/p/c96049624891

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市败玉,隨后出現(xiàn)的幾起案子敌土,更是在濱河造成了極大的恐慌镜硕,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,451評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件返干,死亡現(xiàn)場(chǎng)離奇詭異兴枯,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)矩欠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門财剖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人晚顷,你說我怎么就攤上這事峰伙。” “怎么了该默?”我有些...
    開封第一講書人閱讀 164,782評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵瞳氓,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我栓袖,道長(zhǎng)匣摘,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,709評(píng)論 1 294
  • 正文 為了忘掉前任裹刮,我火速辦了婚禮音榜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘捧弃。我一直安慰自己赠叼,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,733評(píng)論 6 392
  • 文/花漫 我一把揭開白布违霞。 她就那樣靜靜地躺著嘴办,像睡著了一般。 火紅的嫁衣襯著肌膚如雪买鸽。 梳的紋絲不亂的頭發(fā)上涧郊,一...
    開封第一講書人閱讀 51,578評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音眼五,去河邊找鬼妆艘。 笑死,一個(gè)胖子當(dāng)著我的面吹牛看幼,可吹牛的內(nèi)容都是我干的批旺。 我是一名探鬼主播,決...
    沈念sama閱讀 40,320評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼诵姜,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼朱沃!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,241評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤逗物,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后瑟俭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體翎卓,經(jīng)...
    沈念sama閱讀 45,686評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,878評(píng)論 3 336
  • 正文 我和宋清朗相戀三年摆寄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了失暴。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,992評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡微饥,死狀恐怖逗扒,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情欠橘,我是刑警寧澤矩肩,帶...
    沈念sama閱讀 35,715評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站肃续,受9級(jí)特大地震影響黍檩,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜始锚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,336評(píng)論 3 330
  • 文/蒙蒙 一刽酱、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧瞧捌,春花似錦棵里、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至皮钠,卻和暖如春稳捆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背麦轰。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評(píng)論 1 270
  • 我被黑心中介騙來泰國打工乔夯, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人款侵。 一個(gè)月前我還...
    沈念sama閱讀 48,173評(píng)論 3 370
  • 正文 我出身青樓末荐,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親新锈。 傳聞我的和親對(duì)象是個(gè)殘疾皇子甲脏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,947評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器块请,智...
    卡卡羅2017閱讀 134,657評(píng)論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,815評(píng)論 6 342
  • Spring Web MVC Spring Web MVC 是包含在 Spring 框架中的 Web 框架娜氏,建立于...
    Hsinwong閱讀 22,405評(píng)論 1 92
  • 一、沒看完一本書之前不看第二本墩新。讓自己集中精力看書贸弥。 二、學(xué)會(huì)簡(jiǎn)單的電工知識(shí)海渊。家里衛(wèi)生間燈的鎮(zhèn)流器壞掉了绵疲,自己動(dòng)手...
    chinawzck閱讀 207評(píng)論 0 1
  • 《舅舅》(組詩) 你的死讓我沉思,讓我想起所有人的死臣疑。 我走在與你告別的路上盔憨,你是誰忽然不再重要。 ...
    瘦西馬閱讀 533評(píng)論 2 2