FeignClientのnameとurlの注釈はどのように設定しますか?
FeignClientを使用する際は、nameとurlのアノテーションを使って設定できます。
- 名前
@FeignClient(name = "example-service")
public interface ExampleServiceClient {
// ...
}
ここでのname属性はFeignClientの名前を指定しており、名前は任意の文字列であるため、異なるFeignClientを識別するために使用されます。
- リンク
@FeignClient(url = "http://example.com")
public interface ExampleServiceClient {
// ...
}
この場合のurl属性は、FeignClientのサービスURLを指定しており、有効なURL文字列であればどんなものでも構いません。
注意すべき点は、nameとurlの注釈は相互に排他的であり、両方を同時に使用すると例外が発生します。
さらに、nameアノテーションはEurekaサービス登録センターと連携することもできます。例えば、
@FeignClient(name = "example-service", fallback = ExampleServiceClientFallback.class)
public interface ExampleServiceClient {
// ...
}
こちらのfallback属性は、FeignClientのフォールバッククラスを指定し、リクエストが失敗した場合に処理するために使用されます。