03 使用Feign访问注册到eureka中的服务

本文将介绍如何访问eureka中的服务。

1、环境约束

  • win10 64为操作系统
  • idea2018.1.5
  • maven-3.0.5
  • jdk-8u162-windows-x64

2、前提约束

3、操作步骤

3.1 按下图步骤创建一个eureka客户端【注意,多了一个Feign组件】

创建一个eureka客户端

3.2 重命名application.properties为application.yml

修改application.yml为如下内容:

server:
  port: 8082
eureka:
  client:
    service-url:
      defaultZone: http://localhost:7561/eureka
spring:
  application:
    name: user-web

3.3 修改主启动类net.wanho.springboot.web1.Web1Application.java

package net.wanho.springboot.web1;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.openfeign.EnableFeignClients;

@SpringBootApplication
@EnableFeignClients
@EnableEurekaClient
public class Web1Application {

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

3.4 创建一个net.wanho.springboot.web1.UserServiceI.java接口

package net.wanho.springboot.web1;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;

@FeignClient("user-service")//务必与已经注册到eureka中服务名称相同
public interface UserServiceI {

    @RequestMapping("/info/query")//务必与已经注册到eureka中服务提供的api相同
    String queryInfo();
}

3.5 创建net.wanho.springboot.web1.UserController.java

package net.wanho.springboot.web1;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

@RestController
public class UserController {


    @Resource
    UserServiceI userServiceI;

    @RequestMapping("/testquery")
    public String queryInfo()
    {
        return userServiceI.queryInfo();
    }
}

3.6 启动测试

在eureka已经启动并且已经注册了一个服务在eureka之后,启动本章服务。
在浏览器中继续查看Eureka注册中心信息:
启动访问注册到eureka的服务,本身也会注册到eureka
在浏览器中输入http://localhost:8082/testquery,我们能看到8083服务响应的信息,注意,这可是两个服务。
至此,我们完成了在springcloud的中一个服务去访问另外一个服务。

猜你喜欢

转载自www.cnblogs.com/alichengxuyuan/p/12581304.html
今日推荐