栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

OpenFeign的使用01

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

OpenFeign的使用01

OpenFeign的介绍

就是tmd用来调用远程服务接口的,不同于feign的是,支持了spring的一系列注解,用起来方便的一逼.

使用方式 1,添加OpenFeign的依赖(SpringBoot的Demo)
 
 
     org.springframework.cloud
     spring-cloud-starter-openfeign
 
2,定义OpenFeign接口(方式1:单独使用,不结合eureka)

该接口的用途就是用来关联远程服务以及服务相关接口的,比如定义一个用来调用"user"服务的接口,
注意此时是脱离了Eureka注册中使用的情况,所以url填写服务名称进行调用的时候是不起作用的.只能通过服务的真是ip和端口进行远程调用.

package com.hugo.application_web_api.feign;

import com.hugo.entity.Result;
import com.hugo.entity.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.List;
// FeignClient注解用来表明该接口为一个远程调用客户端
// url属性:就是具体要调用的服务的资源地址
@FeignClient(url = "http://localhost:9001/user")
public interface UserFeign {

    @RequestMapping("/all")
    Result> findAll();

}
2,定义OpenFeign接口(方式2:结合eureka使用)
package com.hugo.application_web_api.feign;

import com.hugo.entity.Result;
import com.hugo.entity.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.List;

// 结合eureka使用,通过name属性指定服务的名称即可,并可以添加父级mapping映射值
@FeignClient(name = "user-service/user")
public interface UserFeign {

    @RequestMapping("all")
    Result> findAll();

}
3,启动类添加OpenFeign扫描注解

要使用OpenFeign的接口需要在启动类添加@EnableFeignClient注解,
该注解的用途就是扫描所有的FeignClient—也就是定义的各种OpenFeign的接口

@SpringBootApplication
@EnableEurekaClient
@EnableFeignClients
public class ApplicationWebApiApplication {

    public static void main(String[] args) {
        SpringApplication.run(ApplicationWebApiApplication.class, args);
    }

}
4,测试

访问 http://localhost:8080/feign/test1

job done~~~~~~~~~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/322382.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号