日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

SpringCloud Feign实战(二)

發布時間:2025/3/15 javascript 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringCloud Feign实战(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一,新建Feign工程microservicecloud-consumer-dept-feign,拷貝microservicecloud-consumer-dept-80這個工程的配置和程序

二,修改配置文件pom.xml? 引入Feign依賴

<!--Feign的依賴引入--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-feign</artifactId></dependency>

三,修改我們的啟動類為 DeptConsumer80_Feign_App?

package atguigu.springcloud;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient;@SpringBootApplication @EnableEurekaClient public class DeptConsumer80_Feign_App {public static void main(String[] args) {SpringApplication.run(DeptConsumer80_Feign_App.class, args);} }

四,yml配置文件不用修改

五,修改api(microservicecloud-api)添加新的接口DeptClientService

新增新的注解@FeignClient

package com.atguigu.springcloud.service;import java.util.List;import org.springframework.cloud.netflix.feign.FeignClient; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod;import com.atguigu.springcloud.entities.Dept;/*** * @Description: 修改microservicecloud-api工程,根據已經有的DeptClientService接口* @author zzyy* @date 2019年10月20日*/ @FeignClient(value = "MICROSERVICECLOUD-DEPT") public interface DeptClientService {@RequestMapping(value = "/dept/get/{id}", method = RequestMethod.GET)public Dept get(@PathVariable("id") long id);@RequestMapping(value = "/dept/list", method = RequestMethod.GET)public List<Dept> list();@RequestMapping(value = "/dept/add", method = RequestMethod.POST)public boolean add(Dept dept); }

這樣就已經編碼完成但是api是我們所有工程的公共部分

注意:因為是公共部分,我們要重新編譯,Build Module 'microservicecloud-api'

六,我們編寫到這來我們回到microservicecloud-consumer-dept-feign工程修改Controller,

package atguigu.springcloud.controller;import com.atguigu.springcloud.entities.Dept; import com.atguigu.springcloud.service.DeptClientService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.client.RestTemplate;import javax.annotation.Resource; import java.util.List;@RestController @RequestMapping("/consumer") public class DeptController_Consumer {//@Autowired@Resourceprivate DeptClientService service;@RequestMapping(value = "/dept/get/{id}")public Dept get(@PathVariable("id") Long id){return this.service.get(id);}@RequestMapping(value = "/dept/list")public List<Dept> list(){return this.service.list();}@RequestMapping(value = "/dept/add")public Object add(Dept dept){return this.service.add(dept);} }

七,我們前面在api定義了新的接口,加了@FeignClient注解使用Feign,那我們的主啟動類就要開啟,修改主啟動類

添加新的注解@EnableFeignClients(basePackages= {"com.atguigu.springcloud"})? 表示開啟新的feign調用方式

package atguigu.springcloud;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import org.springframework.cloud.netflix.feign.EnableFeignClients;@SpringBootApplication @EnableEurekaClient @EnableFeignClients(basePackages= {"com.atguigu.springcloud"}) @ComponentScan("com.atguigu.springcloud") public class DeptConsumer80_Feign_App {public static void main(String[] args) {SpringApplication.run(DeptConsumer80_Feign_App.class, args);} }

到這來我們基本就已經完成了基本的編碼,那我們來測試下

?

關于啟動:Eureka集群搭建和啟動參考:https://blog.csdn.net/ywl470812087/article/details/102594937

啟動3個微服務提供者,如果不懂微服務提供者實現請參考https://blog.csdn.net/ywl470812087/article/details/102535582

啟動Feign工程:

訪問:http://localhost/consumer/dept/get/1

上圖測試結果看:默認使用了輪詢的負載均衡

總結:

?

?

總結

以上是生活随笔為你收集整理的SpringCloud Feign实战(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。