Java--IDEA创建多服务模块的SpringCloud微服务项目

Maven多模块项目通常由一个父模块和若干个子模块构成,每个模块都对应着一个pom.xml。它们之间通过继承和聚合(也称作多模块)相互关联。多模块适用于一些比较大的项目,通过合理的模块拆分,实现代码的复用,便于维护和管理。

一、创建Parent Project

1、基于IDEA 创建新的Maven 项目,选择菜单项File----->New---->Project

左侧选择Spring Initializr,默认使用Java 1.8 版本,因为是spring boot项目需要选择该选项,会自动添加相关的依赖包,然后点击Next 按钮

Java--IDEA创建多服务模块的SpringCloud微服务项目_第1张图片

2、填写GroupId;ArtifactId,然后点击下一步Next

Java--IDEA创建多服务模块的SpringCloud微服务项目_第2张图片

3、在Dependencies 依赖窗口,作用是在pom中自动添加一些依赖,在项目开始时就下载。可以根据需要进行选择,这里选择Spring Boot DevTools

SpringBoot与SpringCloud的版本需要对应,对应详细版本可参考如下链接:

http://www.macrozheng.com/#/cloud/springcloud

https://blog.csdn.net/MinggeQingchun/article/details/111562916

Java--IDEA创建多服务模块的SpringCloud微服务项目_第3张图片

4、得到一个标准的Spring boot 项目,该项目是作为一个Parent project存在的,直接删除src文件夹。

此处的父项目只做依赖管理,不需要编写代码。

5、修改pom.xml文件

pom:配置pom的意思是使用maven分模块管理,都会有一个父级项目,pom文件一个重要的属性就是packaging(打包类型),
     一般来说所有的父级项目的packaging都为pom,packaging默认类型jar类型,如果不做配置,maven会将该项目打成jar包

:maven项目之间的继承关系通过元素表示

:对子项目的关联

    
    
        eureka-server
        eureka-client
    

    
    
        org.springframework.boot
        spring-boot-starter-parent
        2.4.1
         
    

    com.myjava.cloud
    springcloud-learning
    0.0.1-SNAPSHOT
    springcloud-learning
    Demo project for Spring Boot

    
    pom

二、Eureka 注册中心模块(Module)

1、右键点击项目,选择New---->Module菜单项

2、左侧选择Maven,勾选Create from archetype ,选择 org.apache.maven.archetypes:maven-archetype-quickstart 项目类型

Java--IDEA创建多服务模块的SpringCloud微服务项目_第4张图片

3、输入模块名字,以及GroupId 继承自父项目,ArtifactId

Java--IDEA创建多服务模块的SpringCloud微服务项目_第5张图片

4、选择需要的SpringCloud组件进行创建

Java--IDEA创建多服务模块的SpringCloud微服务项目_第6张图片

5、创建完成之后,对自动生成的App 类进行rename 操作,如下图所示,更新为EurekaServerApplication

6、对启动类添加注解

//EurekaServer 本身就是个 Springboot 微服务, 所以它有 @SpringBootApplication 注解
@SpringBootApplication
//@EnableEurekaServer 表示这是个 EurekaServer 
@EnableEurekaServer
public class EurekaServerApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaServerApplication.class, args);
    }

}

7、子项目pom.xml 文件,增加 spring-cloud-starter-netflix-eureka-server jar 包


    org.springframework.cloud
    spring-cloud-starter-netflix-eureka-server

8、配置文件application.yml中添加Eureka注册中心的配置

server:
  port: 8001 #指定运行端口
spring:
  application:
    name: eureka-server #指定服务名称
eureka:
  instance:
    hostname: localhost #指定主机地址
  client:
    fetch-registry: false #指定是否要从注册中心获取服务(注册中心不需要开启)
    register-with-eureka: false #指定是否要注册到注册中心(注册中心不需要开启)
    serviceUrl:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
  server:
    enable-self-preservation: false #关闭保护模式

注:Eureka的常用配置

eureka:
  client: #eureka客户端配置
    register-with-eureka: true #是否将自己注册到eureka服务端上去
    fetch-registry: true #是否获取eureka服务端上注册的服务列表
    service-url:
      defaultZone: http://localhost:8001/eureka/ # 指定注册中心地址
    enabled: true # 启用eureka客户端
    registry-fetch-interval-seconds: 30 #定义去eureka服务端获取服务列表的时间间隔
  instance: #eureka客户端实例配置
    lease-renewal-interval-in-seconds: 30 #定义服务多久去注册中心续约
    lease-expiration-duration-in-seconds: 90 #定义服务多久不去续约认为服务失效
    metadata-map:
      zone: jiangsu #所在区域
    hostname: localhost #服务主机名称
    prefer-ip-address: false #是否优先使用ip来作为主机名
  server: #eureka服务端配置
    enable-self-preservation: false #关闭eureka服务端的保护机制

9、启动运行 EurekaServerApplication,访问地址http://127.0.0.1:8001/

Java--IDEA创建多服务模块的SpringCloud微服务项目_第7张图片

 

可参考http://www.360doc.com/showweb/0/0/953061579.aspx

你可能感兴趣的:(JavaEE,spring,boot,springcloud,Eureka)