idea快速搭建spring cloud注冊(cè)中心與注冊(cè)的方法
spring cloud快速搭建
Spring Cloud是一個(gè)微服務(wù)框架,它基于spring boot, Spring Cloud提供的全套的分布式系統(tǒng)解決方案 。
首先我們使用gradle來(lái)創(chuàng)建:

選擇JDK以及勾選Java,然后下一步

起包名已經(jīng)項(xiàng)目名,下一步:

選擇我們本地的gradle包,一直下一步,點(diǎn)擊build.gradle并添加我們的依賴(lài):
group 'com.gaofei'
version '1.0-SNAPSHOT'
//gradle使用的插件
apply plugin: 'java'
//gradle使用spring-boot打包更方便
apply plugin: 'spring-boot'
//jdk的版本號(hào)
sourceCompatibility = 1.8
//本項(xiàng)目的
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
//由于本次創(chuàng)建gradle未出現(xiàn)src,由以下代碼來(lái)解決
task "create-dirs" << {
sourceSets*.java.srcDirs*.each {
it.mkdirs()
}
sourcScts*.resources.srcDirs*.each{
it.midirs()
}
}
//編譯構(gòu)建時(shí)的配置
buildscript {
ext{
springBootVersion='1.5.10.RELEASE' //springBootVersion是自己定義的變量 里面寫(xiě)的是springboot插件的版本
}
repositories {
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
jcenter()
mavenCentral()
maven{ url "http://repo.spring.io/snapshot" }
maven{ url "http://repo.spring.io/milestone" }
maven{ url "http://repo.spring.io/release" }
maven{ url 'http://repo.spring.io/plugins-snapshot' }
}
dependencies{
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")//指的是springboot的一個(gè)插件
}
}
//統(tǒng)一所有項(xiàng)目的配置 就是對(duì)所有的模塊進(jìn)行統(tǒng)一配置 所有以后的模塊都不用再配置
allprojects {
group 'com.gaofei' //分組
version '1.0-SNAPSHOT' //版本號(hào)
ext{
springCloudVersion='Edgware.SR2'
}
//所有項(xiàng)目都會(huì)引用的阿里云里的maven
repositories {
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
jcenter()
mavenCentral()
maven{ url "http://repo.spring.io/snapshot" }
maven{ url "http://repo.spring.io/milestone" }
maven{ url "http://repo.spring.io/release" }
maven{ url 'http://repo.spring.io/plugins-snapshot' }
}
}
//統(tǒng)一所有子項(xiàng)目的配置
subprojects {
apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'spring-boot'
dependencies {
compile('org.springframework.boot:spring-boot-starter-web'){
//使用undertow來(lái)代替tomacat
exclude module:"spring-boot-starter-tomcat"
}
//替代tomcat
compile 'org.springframework.boot:spring-boot-starter-undertow'
//健康檢查
compile 'org.springframework.boot:spring-boot-starter-actuator'
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
}
//版本控制插件
dependencyManagement{
imports{
mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
}
}
}
通過(guò)注釋可以看到各個(gè)代碼塊的作用,這里我們是用阿里云的倉(cāng)庫(kù)
接下來(lái)我們開(kāi)始建eureka注冊(cè)中心,通過(guò)new->Module再建gradle項(xiàng)目來(lái)創(chuàng)建

在build中添加eureka-server依賴(lài)
//表示自己是一個(gè)服務(wù)器 compile 'org.springframework.cloud:spring-cloud-starter-eureka-server'
接下來(lái)在application.yml中配置
server: port: 8000 spring: application: name: register-center #起個(gè)名字 eureka: client: register-with-eureka: false #啟動(dòng)時(shí)不注冊(cè)表明自己是一個(gè)注冊(cè)中心 fetch-registry: false
啟動(dòng)類(lèi)
@SpringBootApplication
@EnableEurekaServer//表明自己是注冊(cè)中心
public class RegisterCenterProvider {
public static void main(String[] args) {
SpringApplication.run(RegisterCenterProvider.class);
}
}
啟動(dòng):

這就表示注冊(cè)中心啟動(dòng)成功
下面創(chuàng)建服務(wù)注冊(cè)到服務(wù)中心
創(chuàng)建一個(gè)gradle module 項(xiàng)目

在build.gradle中添加thymeleaf組件,eureka客戶(hù)端組件的依賴(lài)
//thymeleaf組件 compile 'org.springframework.boot:spring-boot-starter-thymeleaf' //eureka客戶(hù)端組件 compile 'org.springframework.cloud:spring-cloud-starter-eureka'
在application.yml中配置:
server: port: 8001 spring: application: name: project-shopping-mall #注冊(cè)在注冊(cè)中心的名字,它會(huì)進(jìn)行鍵值對(duì)映射url thymeleaf: cache: false #關(guān)閉緩存 eureka: client: service-url: defaultZone: http://localhost:8000/eureka/ #注冊(cè)到注冊(cè)中心 instance: prefer-ip-address: true #用兩種方式進(jìn)行注冊(cè),一種是使用主機(jī)名注冊(cè),一種是使用ip地址進(jìn)行注冊(cè),這里使用ip地址進(jìn)行注冊(cè)
啟動(dòng)類(lèi):
@SpringBootApplication
@EnableDiscoveryClient //表示eureka客戶(hù)端
public class ShoppingMallProvider {
public static void main(String[] args) {
SpringApplication.run(ShoppingMallProvider.class);
}
}
啟動(dòng):

成功!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Springcloud-nacos實(shí)現(xiàn)配置和注冊(cè)中心的方法
- spring cloud consul注冊(cè)的服務(wù)報(bào)錯(cuò)critical的解決
- spring cloud consul使用ip注冊(cè)服務(wù)的方法示例
- 詳解spring-cloud與netflixEureka整合(注冊(cè)中心)
- SpringCloud Eureka實(shí)現(xiàn)服務(wù)注冊(cè)與發(fā)現(xiàn)
- 詳解使用Spring Cloud Consul實(shí)現(xiàn)服務(wù)的注冊(cè)和發(fā)現(xiàn)
- SpringCloud容器化服務(wù)發(fā)現(xiàn)及注冊(cè)實(shí)現(xiàn)方法解析
相關(guān)文章
使用Spring AntPathMatcher的doMatch方法
這篇文章主要介紹了使用Spring AntPathMatcher的doMatch方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09
Java實(shí)戰(zhàn)之小蜜蜂擴(kuò)音器網(wǎng)上商城系統(tǒng)的實(shí)現(xiàn)
這篇文章主要介紹了如何利用Java實(shí)現(xiàn)簡(jiǎn)單的小蜜蜂擴(kuò)音器網(wǎng)上商城系統(tǒng),文中采用到的技術(shù)有JSP、Servlet?、JDBC、Ajax等,感興趣的可以動(dòng)手試一試2022-03-03
詳解Java編程中protected修飾符與static修飾符的作用
這篇文章主要介紹了Java編程中protected關(guān)鍵字與static關(guān)鍵字的作用,是Java入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2016-01-01
編程語(yǔ)言榜單Java與Python并列第二!Julia下滑
日新月異的技術(shù)圈,隨著云、大數(shù)據(jù)、人工智能等主流技術(shù)的廣泛應(yīng)用,作為開(kāi)發(fā)利器的編程語(yǔ)言的最新發(fā)展趨勢(shì)也在無(wú)形中發(fā)生了變化,本文主要介紹了java、Python、Julia等語(yǔ)言在Resmonk榜單的排名2021-08-08

