java进阶(1)之Euraka和Feign的结合使用

PS: 本篇博客只讲具体使用,原理源码后续博客再讲。

博客源码地址在 这里

项目效果

euraka注册和启动效果

java进阶(1)之Euraka和Feign的结合使用_第1张图片

eureka-feign-client接口请求示例

java进阶(1)之Euraka和Feign的结合使用_第2张图片

项目结构

java进阶(1)之Euraka和Feign的结合使用_第3张图片
如图,euraka-feigneuraka服务注册中心,eureka-feign-server是feign服务端,eureka-feign-client是feign客户端。

euraka-feign配置

pom.xml中添加依赖

 <dependency>
     <groupId>org.springframework.cloudgroupId>
     <artifactId>spring-cloud-starter-netflix-eureka-serverartifactId>
 dependency>

添加注解

@SpringBootApplication
@EnableEurekaServer
public class EurekaFeignApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaFeignApplication.class, args);
    }
}

application.properties中添加配置

user.application.shout-name=eureka
server.port=10000
eureka.instance.hostname=127.0.0.1
#是否把自己注册到Eureka
eureka.client.register-with-eureka=false
#是否从Eureka获取注册信息(单Eureka为false)
eureka.client.fetch-registry=false
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/
spring.application.name=cloud-${user.application.shout-name}

euraka-feign-server配置

pom.xml中添加依赖

<dependency>
    <groupId>org.springframework.cloudgroupId>
    <artifactId>spring-cloud-starter-netflix-eureka-serverartifactId>
dependency>

添加注解

@SpringBootApplication
@EnableDiscoveryClient
public class EurekaFeignServerApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaFeignServerApplication.class, args);
    }
}

application.properties中添加配置

spring.application.name=eureka-feign-server
server.port=10001
eureka.client.service-url.defaultZone=http://127.0.0.1:10000/eureka
eureka.instance.prefer-ip-address=true

euraka-feign-client配置

pom.xml中添加依赖

<dependency>
    <groupId>org.springframework.cloudgroupId>
    <artifactId>spring-cloud-starter-netflix-eureka-clientartifactId>
dependency>

添加注解

@EnableFeignClients(basePackages = "com.lxh.eurekafeign.common.api")
@SpringBootApplication
@EnableDiscoveryClient
public class EurekaFeignClientApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaFeignClientApplication.class, args);
    }
}

application.properties中添加配置

spring.application.name=eureka-feign-client
server.port=10002
eureka.client.service-url.defaultZone=http://127.0.0.1:10000/eureka
eureka.instance.prefer-ip-address=true

测试接口类

@Slf4j
@RestController
public class TestController {
    @Autowired
    private TestService testService;
    @GetMapping("/test")
    public String test() {
        return testService.getName();
    }
}

你可能感兴趣的:(java进阶)