When we use Feign to call downstream services, we may need to pass several query parameters in URL. If there are just one or two query parameters, we can use annotation @Param to pass the value of the quey parameters.
@RequestLine("GET /repos?owner={owner}&repo={repo}")
List<Contributor> getContributors(@Param("owner") String owner, @Param("repo") String repo);
But if there are many query parameters, the code will look a little complicated.
@RequestLine("GET /repos?owner={owner}&repo={repo}&branches={branches}&commitStartDate={commitStartDate}&commitEndDate={commitEndDate}")
List<Contributor> getContributors(@Param("owner") String owner,
@Param("repo") String repo,
@Param("branches") String branches