diff --git a/service-consumer/pom.xml b/service-consumer/pom.xml
index e9d32a9..301eb9c 100644
--- a/service-consumer/pom.xml
+++ b/service-consumer/pom.xml
@@ -43,7 +43,15 @@
spring-cloud-starter-loadbalancer
+
+ org.springframework.cloud
+ spring-cloud-starter-openfeign
+
+
+ org.springframework.cloud
+ spring-cloud-starter-loadbalancer
+
diff --git a/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/ServiceConsumerApplication.java b/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/ServiceConsumerApplication.java
index de7ff87..e6b1822 100644
--- a/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/ServiceConsumerApplication.java
+++ b/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/ServiceConsumerApplication.java
@@ -2,8 +2,12 @@ package cn.hezhaohui.serviceconsumer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.cloud.openfeign.EnableFeignClients;
@SpringBootApplication
+@EnableFeignClients
+@EnableDiscoveryClient
public class ServiceConsumerApplication {
public static void main(String[] args) {
SpringApplication.run(ServiceConsumerApplication.class, args);
diff --git a/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/client/ServiceProducerClient.java b/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/client/ServiceProducerClient.java
new file mode 100644
index 0000000..c314399
--- /dev/null
+++ b/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/client/ServiceProducerClient.java
@@ -0,0 +1,11 @@
+package cn.hezhaohui.serviceconsumer.client;
+
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+
+@FeignClient(name = "service-producer")
+public interface ServiceProducerClient {
+
+ @GetMapping("/api/number")
+ String getNumber();
+}
diff --git a/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/controller/ConsumeController.java b/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/controller/ConsumeController.java
index 2fac9f5..02cd84d 100644
--- a/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/controller/ConsumeController.java
+++ b/service-consumer/src/main/java/cn/hezhaohui/serviceconsumer/controller/ConsumeController.java
@@ -1,5 +1,6 @@
package cn.hezhaohui.serviceconsumer.controller;
+import cn.hezhaohui.serviceconsumer.client.ServiceProducerClient;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -11,11 +12,11 @@ import org.springframework.web.client.RestTemplate;
public class ConsumeController {
@Resource
- private RestTemplate restTemplate;
+ private ServiceProducerClient serviceProducerClient;
@GetMapping("/print")
public String print() {
- String number = restTemplate.getForObject("http://service-producer/api/number", String.class);
+ String number = serviceProducerClient.getNumber();
return "[Generate]: " + number;
}
diff --git a/service-consumer/src/main/resources/bootstrap.yml b/service-consumer/src/main/resources/bootstrap.yml
index 2a607aa..790f819 100644
--- a/service-consumer/src/main/resources/bootstrap.yml
+++ b/service-consumer/src/main/resources/bootstrap.yml
@@ -8,4 +8,4 @@ spring:
eureka:
client:
service-url:
- defaultZone: http://localhost:8761/eureka
\ No newline at end of file
+ defaultZone: http://localhost:8761/eureka/
\ No newline at end of file
diff --git a/service-producer/src/main/java/cn/hezhaohui/serviceproducer/ServiceProducerApplication.java b/service-producer/src/main/java/cn/hezhaohui/serviceproducer/ServiceProducerApplication.java
index 1825219..d524545 100644
--- a/service-producer/src/main/java/cn/hezhaohui/serviceproducer/ServiceProducerApplication.java
+++ b/service-producer/src/main/java/cn/hezhaohui/serviceproducer/ServiceProducerApplication.java
@@ -4,7 +4,6 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
-
public class ServiceProducerApplication {
public static void main(String[] args) {
SpringApplication.run(ServiceProducerApplication.class, args);
diff --git a/service-producer/src/main/resources/bootstrap.yml b/service-producer/src/main/resources/bootstrap.yml
index e23cfc0..ed338c6 100644
--- a/service-producer/src/main/resources/bootstrap.yml
+++ b/service-producer/src/main/resources/bootstrap.yml
@@ -8,4 +8,4 @@ spring:
eureka:
client:
service-url:
- defaultZone: http://localhost:8761/eureka
\ No newline at end of file
+ defaultZone: http://localhost:8761/eureka/
\ No newline at end of file