微服务之间调用

第一步:添加远程调用依赖

使用Fegin实现远程调用,添加依赖,在父工程的时候我们已经添加了
就是这个:

  <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>

开启Feign功能

在B工程的Application文件前增加注解@EnableFeignClients:

第二步:进行调用微服务远程调用

这里教学所以以最简单的案例教学, 在用户微服务控制层编写一个最简单的HelloWorld

你们这里这样编写就行,如下:

@Controller
@RequestMapping("/user")
public class UserController {

    @GetMapping("/hello")
    @ResponseBody
    public String hello(){
        return "hello";
    }

}

启动用户微服务访问一下这个hello,这里没有问题的

第三步:订单微服务调用用户微服务走的hello方法

@FeignClient("user")
public interface UserMicroservice {

@GetMapping("/user/hello")
String hello();

@FeignClient(“user”) 走的user就是用户微服务的名字
意思就是你的用户微服务注册到了nacos服务,nacos有了用户微服务的ip地址和端口号
user可以代表为:localhost:8000
那么有了用户微服务的ip地址和端口,我们怎么就不能调用它的方法能,对吧

然后是方法@GetMapping("/user/hello")
/user/hello这里就是调用user下的hello对吧

第四步:到这里我们在订单微服务写控制层调用我们编写的UserMicroservice接口,看看能否调用成功

@Controller
@RequestMapping("/order")
public class UserController {

    @Autowired
    private UserMicroservice userMicroservice;

    @RequestMapping("/hello")
    @ResponseBody
    public String hello(){
        return userMicroservice.hello();
    }
}

第五步:启动用户微服务和订单微服务测试
1:先访问用户微服务本身的hello方法

2:在访问订单微服务的hello方法
这里可以看出,调用成功了

未经允许不得转载:lxfamn » 微服务之间调用

赞 (0) 打赏

置顶推荐

评论 0

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏