基于上篇文章给出feign实例代码
package com.example.feign;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.openfeign.EnableFeignClients;
/**
* 开启springcloud feign 功能
*/
@EnableFeignClients
@SpringBootApplication
public class FeignApplication {
public static void main(String[] args) {
SpringApplication.run(FeignApplication.class, args);
}
}
service
package com.example.feign;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(value = "producer")
public interface FeignService {
/**
* 绑定服务
* @param name
* @return
*/
@RequestMapping(value = "/get",method = RequestMethod.GET)
String hello(@RequestParam(value = "name") String name);
}
controller
package com.example.feign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestFeignController {
@Autowired
FeignService feignService;
@GetMapping(value = "/hello")
public String hello(@RequestParam String name) {
return feignService.hello(name);
}
}
属性文件
spring.application.name=feign
eureka.client.service-url.defaultZone=http://localhost:8080/eureka/
server.port=8088