SpringCloud装う使用

SpringCloud装う使用

  • SpringCloudバージョン:Hoxton.RELEASE

装うの春クラウド- 。JMCui -ブログパーク
@FeignClient引数は詳細な

  1. 導入Mavenの依存性
  2. 配置装う、@EnableFeignClients
  3. インタフェースの宣言

1.依存のMaven導入し

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

2. [設定装います

SpringBootApplicationの場所にマークノート、 @EnableFeingClients

3.インタフェース宣言

免責事項の構成装うインターフェイス、簡単な例

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * feign声明
 * @author suwenguang
 **/
@FeignClient(value = "test-user-provider-service")
public interface FeignUserService {

	@RequestMapping("/user/get")
	String get();
}

インタフェース宣言は含まれますが、次のセクションに限定されるものではなく
、パス文の3.1
3.2パラメータ宣言
3.3戻る宣言
春クラウドOpenFeign

3.1パスステートメント

3.1.1。内部サービスレジストリコール
3.1.2コール外部インターフェース

3.1.1。内部コールサービスレジストリ

  • サービス名、指定されたレジストリにより、 @FeignClient(value="xxx-service")

例:

@FeignClient(value = "test-user-provider-service")
public interface FeignUserService {

	@RequestMapping("/user/get")
	String get();
}

外部インタフェースを呼び出す3.1.2

限り、HTTP要求は基本的に満たしているとして、それはマイクロサービスコールとして使用することができないだけで装います

  • 指定されたURLとの完全なアドレス

例:

@FeignClient(url = "192.168.9.233:19192/ttc",name = "commision-service")
public interface FeignCommisionService {

	@RequestMapping(method = RequestMethod.GET,value = "/health/get")
	Object health();

}

3.2パラメータ宣言

内部要求のために、我々は一般的に要求パラメータJSON形式に限定されるものではなく、単にHTTPリクエストのJSON
ここでの唯一の方法のJSON

装う複雑なパラメータの受け渡し

主な注意事項:

  • @RequestBody
  • @RequestParam
  • @PathVariable

フォーマットは、対応するインターフェイスJSON形式により受信された場合、単にシリアライズJSON使用してオブジェクトを渡して、オブジェクトに対応する@RequestBodyシリアル化し、使用することができる@RequestParamデータを指定します

装う要求構文マルチパラメータの使い方|周さんのブログ - フォーカスドッカー春クラウド、

例:

@FeignClient(name = "microservice-provider-user")
public interface UserFeignClient {
  @RequestMapping(value = "/get", method = RequestMethod.GET)
  public User get1(@RequestParam("id") Long id, @RequestParam("username") String username);
}

ファイルパラメータで装うためにどのように?
私は、Fileオブジェクトを渡すことができ、restTemplateでmultipartFormを指定できるようにするために使用されますので作り方を装う
春クラウドOpenFeignを

使用@SpringQueryMapのサポート
例:

@FeignClient("demo")
public interface DemoTemplate {

    @GetMapping(path = "/demo")
    String demoEndpoint(@SpringQueryMap Params params);
}

3.3 return文

実際には、あなただけ受け入れるためにオブジェクトを使用しています。することができ
、受信側オブジェクトへの統一体が戻ると直接的または。コール両側が言葉の同意を調整する場合。

設定4.装います

  1. グローバルコンフィギュレーション
  2. アローン構成

公式サイトをチェック春クラウドOpenFeignを

回路遮断器構成Hystrix

ホクストンのhystrixブレーカーは、スイッチhystrixを設定するには、設定ファイルを使用して、統合しました

グローバルコンフィギュレーションは、分離して配置することができることができます

公開された161元の記事 ウォンの賞賛140 ビュー470 000 +

おすすめ

転載: blog.csdn.net/qq_37933685/article/details/103755724