1、概念
成都創(chuàng)新互聯(lián)長期為1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為新鄉(xiāng)縣企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都做網(wǎng)站,新鄉(xiāng)縣網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
Feign 是一種聲明式、模板化的 HTTP 客戶端,是一個聲明web服務(wù)客戶端,這便得編寫web服務(wù)客戶端更容易。
2、應(yīng)用
2.1 、在項目中,模塊與模塊之間需要互相調(diào)用,比如web模塊需要調(diào)用service模塊的服務(wù),這個時候就需要在web引入Fegin,創(chuàng)建項目web-fegin
2.2、在pom文件里面添加
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-feign</artifactId>
</dependency>
2.3、創(chuàng)建啟動類WebFeignApplication
@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients(basePackages="com.web")
public class WebFeignApplication{
public static void main(String[] args) {
SpringApplication.run(FeignApplication.class, args);
}
}
2.4、定義服務(wù)接口類UserFeignClient
@FeignClient(name =WebConstants.SERVIE_USER_NAME)
public interface UserFeignClient {
@RequestMapping("/{id}")
public User findByIdFeign(@RequestParam("id") Long id);
}
2.5、在web層調(diào)用Fegin
@RestController
public class FeignController {
@Autowired
private UserFeignClient userFeignClient;
@GetMapping("feign/{id}")
public User findByIdFeign(@PathVariable Long id) {
User user = this.userFeignClient.findByIdFeign(id);
return user;
}
}
2.6 如果不使用上面的fegin,則得自己寫個服務(wù)調(diào)用類,來調(diào)用service的服務(wù),增加編程的難度,既然有了fegin,就沒必要重復(fù)造輪子了。
3、application.properties的配置
spring.application.name=web-fegin
server.port=8020
eureka.client.serviceUrl.defaultZone=http://localhost:9411/eureka/
service.user.name=microservice-provider-user
4、定義常量WebConstants
public class WebConstants{
public static final String SERVIE_USER_NAME="${service.user.name}";
}
5、訪問
http://127.0.0.1:8020/fegin/1
6、總結(jié):
其實通過Feign封裝了HTTP調(diào)用服務(wù)方法,使得客戶端像調(diào)用本地方法那樣直接調(diào)用方法
分享文章:springcloud(四):Feign的應(yīng)用
鏈接地址:http://aaarwkj.com/article28/jjggjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、移動網(wǎng)站建設(shè)、動態(tài)網(wǎng)站、微信小程序、用戶體驗、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)