1.eureka与feign

eureka服务端 三步

1, pom.xml 注意对应的是springboot 2.0.4 springcloud Finchley.SR1   注意springboot 2.0.4不能跟springcloud Finchley.M9一起


    org.springframework.cloud
    spring-cloud-starter-netflix-eureka-server

2. application.yml 里面

server:
  port: 9000
eureka:
  client:
    register-with-eureka: false  #服务端禁止自己注册自己,默认是true所以这儿要关闭
    fetch-registry: false    #服务端禁止也不用去拿东西,默认是true所以这儿要关闭
    service-url:
      defaultZone: http://127.0.0.1:${server.port}/eureka/

3.建启动类入口

package com.gdk.eureka;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

//@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
@SpringBootApplication
@EnableEurekaServer
public class EurekaServer {
    public static void main(String[] args) {
        SpringApplication.run(EurekaServer.class);
    }
}

当有的项目主pom里面带有mybatis的自动配置的时候,这些其他项目会自己去找datasource

这时候把mybatis的pom配置坐标移到web项目的pom里面或者把其他@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class}) 入口去掉datasource,不然会报错找不到url配置 datasource配置

eureka客户端 把server改成client 然后把yml里面的${server.port}改成相对应的erueka的端口

还有就是把yml里面两个false去掉,那是给服务端用的

feign的使用 首先调用被调用都要注册eureka ,

然后jar包   注意springboot2.0.以后的吧,是spring-cloud-starter-openfeign   springboot1.几的是spring-cloud-starter-feign


    org.springframework.cloud
    spring-cloud-starter-openfeign

1.eureka与feign_第1张图片

新建接口 

0: 复制被调用的controller里面的作为接口方法, 

1:被调用的服务名字, spring-application-name  注意不能有下划线,

2:注意全路径

3:本服务调用的时候只认这个参数,不管后面的String labelId

最后调用方启动类上面给个发现服务和使用feign的注解

@EnableDiscoveryClient

@EnableFeignClients

              

 

 

你可能感兴趣的:(springcloud)