SpringCloud 如何包括Feign

2023-11-24 14:15 更新

要將Feign包含在您的項(xiàng)目中,請(qǐng)將啟動(dòng)器與組org.springframework.cloud和工件ID spring-cloud-starter-openfeign一起使用。有關(guān) 使用當(dāng)前Spring Cloud版本Train設(shè)置構(gòu)建系統(tǒng)的詳細(xì)信息,請(qǐng)參見(jiàn)Spring Cloud項(xiàng)目頁(yè)面。

示例spring boot應(yīng)用

@SpringBootApplication
@EnableFeignClients
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

StoreClient.java。 

@FeignClient("stores")
public interface StoreClient {
    @RequestMapping(method = RequestMethod.GET, value = "/stores")
    List<Store> getStores();

    @RequestMapping(method = RequestMethod.POST, value = "/stores/{storeId}", consumes = "application/json")
    Store update(@PathVariable("storeId") Long storeId, Store store);
}

@FeignClient批注中,字符串值(上面的“ stores”)是一個(gè)任意的客戶端名稱,用于創(chuàng)建Ribbon負(fù)載均衡器(請(qǐng)參見(jiàn)下面的Ribbon support的詳細(xì)信息)。 您還可以使用url屬性(絕對(duì)值或僅是主機(jī)名)來(lái)指定URL。在應(yīng)用程序上下文中,bean的名稱是接口的標(biāo)準(zhǔn)名稱。要指定自己的別名值,可以使用@FeignClient批注的qualifier值。

上面的Ribbon客戶端將希望發(fā)現(xiàn)“商店”服務(wù)的物理地址。如果您的應(yīng)用程序是Eureka客戶端,則它將在Eureka服務(wù)注冊(cè)表中解析該服務(wù)。如果您不想使用Eureka,則可以簡(jiǎn)單地在外部配置中配置服務(wù)器列表( 例如, 參見(jiàn) 上文)。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)