springCloud学习第三天----远程调用feign

我们要新建一个springboot服务,user-consumer 除了和之前创建eureka-client步骤都一样以外还需要勾选feign支持

springCloud学习第三天----远程调用feign

我们在eureka-client中加入代码

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

@RestController
public class UserService {
    @GetMapping("/login")
    public String login(){
        return "success1";
    }
}

springCloud学习第三天----远程调用feign

再到user-consumer中

@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients
public class UserConsumerApplication {

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

}
启动类要加入@EnableFeignClients注解,下面我们做个小栗子,

springCloud学习第三天----远程调用feign

import com.example.userconsumer.userService.impl.UserServicImpl;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;

@FeignClient(name="eureka-client")
public interface UserService {
    @GetMapping("/login")
    String login();
}

 我们写一个借口,加上@FeignClient注解,name值就是eureka-client服务的名

springCloud学习第三天----远程调用feign

接下来我们作一个模拟登陆的类,

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class Longin {
    @Autowired
    private UserService userService;

    @GetMapping("/userLogin")
    public String longin(){

        return userService.login();
    }
}

把接口注入,然后调用login方法,这样就实现了远程调用

 springCloud学习第三天----远程调用feign