你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
按照截图来,先建立一个根项目
点击自己的项目右键 创建module
记得点击enable auto-import自动导包
在enueka gradle 写入下面这个配置导入相关包 (注意
group ‘com.rainteas’
version ‘1.0-SNAPSHOT’) 不要改
这是build.gradle
plugins { id 'org.springframework.boot' version '2.1.3.RELEASE' id 'java' } apply plugin: 'io.spring.dependency-management' group 'com.rainteas' version '1.0-SNAPSHOT' sourceCompatibility = 1.8 repositories { mavenCentral() } ext { set('springCloudVersion', 'Greenwich.SR1') } dependencies { implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server' testImplementation 'org.springframework.boot:spring-boot-starter-test' testCompile group: 'junit', name: 'junit', version: '4.12' } dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}" } }
build.gradle 配置文件
plugins { id 'org.springframework.boot' version '2.1.3.RELEASE' id 'java' } apply plugin: 'io.spring.dependency-management' group 'com.rainteas' version '1.0-SNAPSHOT' sourceCompatibility = 1.8 repositories { mavenCentral() } ext { set('springCloudVersion', 'Greenwich.SR1') } dependencies { implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server' implementation 'org.springframework.cloud:spring-cloud-starter-netflix-zuul' testImplementation 'org.springframework.boot:spring-boot-starter-test' testCompile group: 'junit', name: 'junit', version: '4.12' } dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}" } }
build.gradle
plugins { id 'org.springframework.boot' version '2.1.3.RELEASE' id 'java' } group 'com.rainteas' version '1.0-SNAPSHOT' sourceCompatibility = 1.8 repositories { mavenCentral() } ext { set('springCloudVersion', 'Greenwich.SR1') } dependencies { implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server' implementation 'org.springframework.cloud:spring-cloud-starter-openfeign:2.0.2.RELEASE' compileOnly 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' testCompile group: 'junit', name: 'junit', version: '4.12' } dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}" } }
自己创建一个application.yml 将这个写进去
server: port: 8762 eureka: client: #表明自己属于服务中心主体 registerWithEureka: false #是否将自身注册 fetchRegistry: false #表示自己就是服务注册中心,我的职责就是为父服务实例,并不需要去检索服务 server: enable-self-preservation: false
同上 建立一个application.yml
spring: application: name: test-gateway eureka: client: service-url: defaultZone: http://localhost:8762/eureka instance: instance-id: test-gateway #自定义服务名称信息 prefer-ip-address: true #访问路径可以显示ip地址 #注册服务使用ip地址 server: port: 8080 zuul: routes: testProject: path: /testShop/** serviceId: test-shop testUser: path: /testUser/** serviceId: test-user
同上
spring: application: name: test-user server: port: 8081 eureka: client: service-url: defaultZone: http://localhost:8762/eureka
这样就完成了 下面是例子 testShop是网关,后面是方法地址
http://localhost:8080/testShop/shophello
先写一个接口
把projectService 注入进去
然后直接调用即可