SpringCloud中Feign的使用

作用:方便快捷的實現各個服務之間的調用

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);
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章