搭建项目

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

搭建根项目

springcloud gradle 用idea搭建
springcloud gradle 用idea搭建
springcloud gradle 用idea搭建
springcloud gradle 用idea搭建
按照截图来,先建立一个根项目

建立子项目

先建立服务注册中心eueka

springcloud gradle 用idea搭建
点击自己的项目右键 创建module
springcloud gradle 用idea搭建
springcloud gradle 用idea搭建
springcloud gradle 用idea搭建
记得点击enable auto-import自动导包
springcloud gradle 用idea搭建
在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}"
    }
}

根据前几个步骤 再添加一个网关管理 gateway 如图

springcloud gradle 用idea搭建
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}"
    }
}

建立user 消费者如图

springcloud gradle 用idea搭建
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}"
    }
}

配置eureka

自己创建一个application.yml 将这个写进去
springcloud gradle 用idea搭建

server:
  port: 8762
eureka:
  client:
    #表明自己属于服务中心主体
    registerWithEureka: false #是否将自身注册
    fetchRegistry: false  #表示自己就是服务注册中心,我的职责就是为父服务实例,并不需要去检索服务
  server:
    enable-self-preservation: false

配置gateway

同上 建立一个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

配置消费者 user

同上

spring:
  application:
    name: test-user

server:
  port: 8081
eureka:
  client:
    service-url:
      defaultZone: http://localhost:8762/eureka

注意以上application 名字,由于我是做教程(用了2份做的),有几个spring.application.name 不太一样,例如test-user 和user 改成一样的

开启enreka

springcloud gradle 用idea搭建

开启网关和enueka

springcloud gradle 用idea搭建

消费者

springcloud gradle 用idea搭建
这样就完成了 下面是例子 testShop是网关,后面是方法地址
http://localhost:8080/testShop/shophello

两个服务进行通信

springcloud gradle 用idea搭建
先写一个接口

把projectService 注入进去
springcloud gradle 用idea搭建
然后直接调用即可
springcloud gradle 用idea搭建

相关文章:

  • 2021-04-15
  • 2021-06-24
  • 2021-12-05
  • 2021-12-10
  • 2022-12-23
  • 2021-07-11
  • 2022-01-01
  • 2021-08-15
猜你喜欢
  • 2021-10-09
  • 2022-12-23
  • 2021-10-04
  • 2022-12-23
  • 2021-11-16
  • 2022-01-14
相关资源
相似解决方案