1:Intellij 新建 项目 order-service
2:pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>cn.tigee</groupId><artifactId>order-service</artifactId><version>1.0-SNAPSHOT</version><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-parent</artifactId><version>2023.0.3</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency></dependencies></project>
3:application.xml
server:port: 7011servlet:context-path: /
spring:application:name: order-serviceeureka:client:service-url:defaultZone: ${EUREKA_URI:http://localhost:8761/eureka}instance:prefer-ip-address: true
4:启动类
package cn.tigee;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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
@EnableDiscoveryClient
@EnableFeignClients //开启OpenFeign
public class ApplicationMain {static final Logger logger = LoggerFactory.getLogger(ApplicationMain.class);public static void main(String[] args) {logger.debug("服务启动..start......");SpringApplication.run(ApplicationMain.class, args);logger.debug("服务启动..end......");}}
5:openfeign接口定义
package cn.tigee;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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
@EnableDiscoveryClient
@EnableFeignClients //开启OpenFeign
public class ApplicationMain {static final Logger logger = LoggerFactory.getLogger(ApplicationMain.class);public static void main(String[] args) {logger.debug("服务启动..start......");SpringApplication.run(ApplicationMain.class, args);logger.debug("服务启动..end......");}}
7:使用接口
package cn.tigee.controller;import cn.tigee.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class HelloController {@Value("${server.port}")private int port;@Value("${spring.application.name}")private String serve;@AutowiredUserService userService;@RequestMapping("hello")public String hello(){return "你好:"+serve+":"+port+"_"+userService.hello("jinnlajsdlfj");}}
8:启动
9:浏览器请求接口
localhost:7101/order-service/hello
order-service 调用 user-service 返回结果成功
你好:order-service:7013_你好:user-service:7002:jinnlajsdlfj