[SpringCloud系列008] SpringCloud之Feign 你的名字 2024-02-18 21:12 22阅读 0赞 **添加依赖** <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> **启动类** @EnableDiscoveryClient @SpringBootApplication @EnableFeignClients public class ConsumerOrderApplication { public static void main(String[] args) { SpringApplication.run(ConsumerOrderApplication.class, args); } } **OrderController** @RestController public class OrderController { @Autowired private UserFeignClient userFeignClient; @Autowired private RefactorUserService refactorUserService; @GetMapping("/user/{id}") public User findById(@PathVariable Long id) { return userFeignClient.findById(id); } @GetMapping("/user-extends/{id}") public User findById2(@PathVariable Long id) { return refactorUserService.getUser(id); } } **feign** @FeignClient(name = "microservice-provider-user") public interface UserFeignClient { @RequestMapping(value = "/{id}", method = RequestMethod.GET) public User findById(@PathVariable("id") Long id); } **user服务端配置** server: port: 8010 spring: application: name: microservice-consumer-order eureka: client: serviceUrl: defaultZone: http://localhost:8761/eureka/ instance: prefer-ip-address: true **Eureka配置** server: port: 8761 # 指定该Eureka实例的端口 eureka: client: registerWithEureka: false fetchRegistry: false serviceUrl: defaultZone: http://localhost:8761/eureka/ # 参考文档:http://projects.spring.io/spring-cloud/docs/ 1.0.3/spring-cloud.html#_standalone_mode # 参考文档:http://my.oschina.net/buwei/blog/618756 **使用feign建立抽象接口工程** //另外的工程,先构建,后引入 public interface UserService { @GetMapping("/user/{id}") public User getUser(@PathVariable(value = "id") Long id); } **主工程引入** import com.tuling.cloud.study.service.UserService; import org.springframework.cloud.netflix.feign.FeignClient; @FeignClient(name = "microservice-provider-user") public interface RefactorUserService extends UserService { }
还没有评论,来说两句吧...