作用:方便快捷的實現各個服務之間的調用
1、引入依賴
<!--引入feign-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
2、在啓動類上加入註解(@EnableFeignClients)
package cn.itcast;
import org.springframework.boot.SpringApplication;
import org.springframework.cloud.client.SpringCloudApplication;
import org.springframework.cloud.openfeign.EnableFeignClients;
@EnableFeignClients
@SpringCloudApplication
public class ConsumerApplication {
public static void main(String[] args) {
SpringApplication.run(ConsumerApplication.class);
}
}
3、編寫一個藉口,在接口上用SpringMVC的方式告訴它請求方式、請求名稱等信息,並且用(@FeignClient("服務名稱"))註解告訴它服務名稱
package cn.itcast.consumer.client;
import cn.itcast.consumer.pojo.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@FeignClient("user-service")
public interface UserClient {
@GetMapping("user/{id}")
User queryUserById(@PathVariable("id") Long id);
}
4、在使用類中如調用本項目中的類的方法相同,自動注入並使用
@Autowired
private UserClient userClient;
public User queryUserById(@PathVariable("id") Long id) {
return userClient.queryUserById(id);
}