好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

idea快速搭建spring cloud注册中心与注册的方法

spring cloud快速搭建

spring cloud是一个微服务框架,它基于spring boot, spring cloud提供的全套的分布式系统解决方案 。 

首先我们使用gradle来创建:

选择jdk以及勾选java,然后下一步

起包名已经项目名,下一步:

选择我们本地的gradle包,一直下一步,点击build.gradle并添加我们的依赖:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

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测试数据/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测试数据/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依赖

?

1

2

//表示自己是一个服务器

   compile 'org.springframework.cloud:spring-cloud-starter-eureka-server'

接下来在application.yml中配置

?

1

2

3

4

5

6

7

8

9

server:

  port: 8000

spring:

  application:

   name: register-center #起个名字

eureka:

  client:

   register-with-eureka: false #启动时不注册表明自己是一个注册中心

   fetch-registry: false

启动类

?

1

2

3

4

5

6

7

8

@springbootapplication

@enableeurekaserver //表明自己是注册中心

public class registercenterprovider {

   public static void main(string[] args) {

 

     springapplication.run(registercenterprovider. class );

   }

}

启动:

这就表示注册中心启动成功

下面创建服务注册到服务中心

创建一个gradle module 项目

在build.gradle中添加thymeleaf组件,eureka客户端组件的依赖

?

1

2

3

4

//thymeleaf组件

   compile 'org.springframework.boot:spring-boot-starter-thymeleaf'

   //eureka客户端组件

   compile 'org.springframework.cloud:spring-cloud-starter-eureka'

在application.yml中配置:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

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地址进行注册

启动类:

?

1

2

3

4

5

6

7

@springbootapplication

@enablediscoveryclient //表示eureka客户端

public class shoppingmallprovider {

   public static void main(string[] args) {

     springapplication.run(shoppingmallprovider. class );

   }

}

启动:

成功!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

原文链接:http://HdhCmsTestcnblogs测试数据/itgaofei/p/9329375.html

查看更多关于idea快速搭建spring cloud注册中心与注册的方法的详细内容...

  阅读:53次