idea快速搭建spring cloud注册中心与注册的方法
作者:IT高飞 发布时间:2023-03-09 17:40:35
标签:idea,搭建,spring,cloud
spring cloud快速搭建
Spring Cloud是一个微服务框架,它基于spring boot, Spring Cloud提供的全套的分布式系统解决方案 。
首先我们使用gradle来创建:
选择JDK以及勾选Java,然后下一步
起包名已经项目名,下一步:
选择我们本地的gradle包,一直下一步,点击build.gradle并添加我们的依赖:
group 'com.gaofei'
version '1.0-SNAPSHOT'
//gradle使用的插件
apply plugin: 'java'
//gradle使用spring-boot打包更方便
apply plugin: 'spring-boot'
//jdk的版本号
sourceCompatibility = 1.8
//本项目的
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
//由于本次创建gradle未出现src,由以下代码来解决
task "create-dirs" << {
sourceSets*.java.srcDirs*.each {
it.mkdirs()
}
sourcScts*.resources.srcDirs*.each{
it.midirs()
}
}
//编译构建时的配置
buildscript {
ext{
springBootVersion='1.5.10.RELEASE' //springBootVersion是自己定义的变量 里面写的是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的一个插件
}
}
//统一所有项目的配置 就是对所有的模块进行统一配置 所有以后的模块都不用再配置
allprojects {
group 'com.gaofei' //分组
version '1.0-SNAPSHOT' //版本号
ext{
springCloudVersion='Edgware.SR2'
}
//所有项目都会引用的阿里云里的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' }
}
}
//统一所有子项目的配置
subprojects {
apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'spring-boot'
dependencies {
compile('org.springframework.boot:spring-boot-starter-web'){
//使用undertow来代替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}"
}
}
}
通过注释可以看到各个代码块的作用,这里我们是用阿里云的仓库
接下来我们开始建eureka注册中心,通过new->Module再建gradle项目来创建
在build中添加eureka-server依赖
//表示自己是一个服务器
compile 'org.springframework.cloud:spring-cloud-starter-eureka-server'
接下来在application.yml中配置
server:
port: 8000
spring:
application:
name: register-center #起个名字
eureka:
client:
register-with-eureka: false #启动时不注册表明自己是一个注册中心
fetch-registry: false
启动类
@SpringBootApplication
@EnableEurekaServer//表明自己是注册中心
public class RegisterCenterProvider {
public static void main(String[] args) {
SpringApplication.run(RegisterCenterProvider.class);
}
}
启动:
这就表示注册中心启动成功
下面创建服务注册到服务中心
创建一个gradle module 项目
在build.gradle中添加thymeleaf组件,eureka客户端组件的依赖
//thymeleaf组件
compile 'org.springframework.boot:spring-boot-starter-thymeleaf'
//eureka客户端组件
compile 'org.springframework.cloud:spring-cloud-starter-eureka'
在application.yml中配置:
server:
port: 8001
spring:
application:
name: project-shopping-mall #注册在注册中心的名字,它会进行键值对映射url
thymeleaf:
cache: false #关闭缓存
eureka:
client:
service-url:
defaultZone: http://localhost:8000/eureka/ #注册到注册中心
instance:
prefer-ip-address: true #用两种方式进行注册,一种是使用主机名注册,一种是使用ip地址进行注册,这里使用ip地址进行注册
启动类:
@SpringBootApplication
@EnableDiscoveryClient //表示eureka客户端
public class ShoppingMallProvider {
public static void main(String[] args) {
SpringApplication.run(ShoppingMallProvider.class);
}
}
启动:
成功!
来源:http://www.cnblogs.com/itgaofei/p/9329375.html


猜你喜欢
- 今天去某在线教育面试面试官让做的一道题,题目描述如下:给定一个不重复的无序数组arr和一个定值num查找arr中是否有两个数的和等于num有
- 打包与运行在项目开发完成之后,可以直接用IDEA将其打包成JAR包运行,也可以打包成WAR包运行以便在多服务器、多配置环境下运行。双击cle
- 这篇文章主要介绍了SpringBoot实现 * 、过滤器、 * 过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考
- 一、前言写今天这篇文章的缘由,其实是来自于前段时间和粉丝的一个聊天,最近他打算参加游戏创作大赛,问我需要准备学习什么知识,以及参加比赛的注意
- Java 项目中常常回遇到发送邮件Java 发送邮件有几种,今天先给大家介绍用 HtmlEmail 来发送邮件,我这里是用 Maven 来搭
- 本文实例讲述了C#实现将窗体固定在显示器的左上角且不能移动的方法。分享给大家供大家参考。具体实现方法如下:using System;usin
- 1、JDK:Java Development Kit,java开发工具包。http://www.oracle.com/technetwork
- 这篇文章主要介绍了java加载property文件配置过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,
- 代码很简单,这里就不多废话了,直接奉上代码using UnityEngine;using System.Collections;public
- 引言坦白从宽吧,我就是那个花了两天两夜把 1M 图片优化到 100kb 的家伙——王小二!自从因为一
- 在导入studio工程的时候,进行sync的时候,提示Error:Configuration with name 'default&
- 前提: 可以参考文章 SpringBoot 接入 SparkSpringBoot 已经接入 Spark已配置 JavaSparkContex
- Intersect子句一、简介Intersect返回交集,交集是指同时出现在两个集合中的元素,和数据库中的Intersect方法实现功能一样
- 一、单文件压缩 场景,文件可能比较大,需要压缩传输,比如上传和下载/// <summary&g
- 本文实例为大家分享了java实现飞机游戏的具体代码,供大家参考,具体内容如下MyGameFrame类:主要的调用类package sc.wh
- 冒泡排序原理:从头(左边)开始比较每一对相邻的元素,如果第1个比第2个大,就交换它们的位置,执行完一轮后,最末尾(最右边)就是最大的元素。举
- 我们在使用APP的过程中,软件会偶尔提示我们进行版本更新,我们点击确认更新后,会在通知栏显示下载更新进度(已知长度的进度条)以及安装情况(不
- 引言在Google I/O 2014上,Google公布了Android L Preview版本,此版本的UI有了非常大的改变,很炫很给力!
- 笔者今年做了一个和人脸有关的android产品,主要是获取摄像头返回的预览数据流,判断该数据流是否包含了人脸,有人脸时显示摄像头预览框,无人
- Word中设置水印时,可使用预设的文字或自定义文字设置为水印效果,但通常添加水印效果时,会对所有页面都设置成统一效果,如果需要对每一页或者某