Feign是Webservice服務的客戶端,創建接口+注解就可完成,實現簡單
- 客戶端通過@EnableFeignClients開啟Feign的支持功能
-
@SpringBootApplication
-
@EnableEurekaClient
-
@EnableFeignClients
-
@RestController
-
public class TestApplication {
-
public static void main(String[] args) {
-
SpringApplication.run(TestApplication.class, args);
-
}
-
}
<p> </p> </li> <li>定義接口,通過@FeignClient("remote-service") 注解指定服務名來綁定服務,再使用SpringMVC的注解@RequestMapping來綁定具體該服務提供的REST接口 <span style="color:#f33b45;"><strong>注</strong>:服務名不區分大小寫</span> <pre class="has" name="code" onclick="hljs.signin(event)"><code class="language-java hljs"><ol class="hljs-ln"><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="1"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-meta">@FeignClient</span>(name = <span class="hljs-string">"user-service"</span>)</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="2"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-keyword">public</span> <span class="hljs-class"><span class="hljs-keyword">interface</span> <span class="hljs-title">UserService</span> </span>{</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="3"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"> </div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="4"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"> <span class="hljs-meta">@RequestMapping</span>(value = <span class="hljs-string">"/service/getUserinfo"</span>)</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="5"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"> <span class="hljs-function"><span class="hljs-keyword">public</span> Map<String, Object> <span class="hljs-title">getUserinfo</span><span class="hljs-params">(@RequestParam(value = <span class="hljs-string">"userid"</span>)</span> String userid)</span>;</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="6"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"> </div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="7"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">}</div></div></li></ol></code><div class="hljs-button signin" data-title="登錄后復制"></div></pre> </li> <li>創建Controller,注入接口,即可使用</li>
-