Spring是一个用于在Java语言中开发Web应用程序的平台。 它于2004年首次推出。2006年,Spring的很多子项目跟着诞生。 每个子项目都侧重于不同的领域。 到目前为止,您可以看到常见的子项目如下图所示-
Spring IO(Spring Integration Objects)是用于Spring子项目族的名称。 它被认为是一个伞,子项目位于这样的伞下面。
Spring Cloud是一个位于Spring IO Umbrella中的子项目,它本身就是一把主伞和一个副伞。
Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁定,领导选举,分布式 会话,集群状态)。 分布式系统的协调导致锅炉板模式,使用Spring Cloud开发人员可以快速站起来实现这些模式的服务和应用程序。 它们适用于任何分布式环境,包括开发人员自己的笔记本电脑,裸机数据中心和Cloud Foundry等托管平台。
以下是Spring Cloud中的子项目和模式列表:
所有Spring Cloud项目都应该由Spring Boot创建,因为Spring Boot是为了帮助开发人员更轻松地使用Spring Framework构建项目。 如果要开发基于Spring Framework的核心Spring Cloud应用程序将非常困难。
因此,要创建Spring Cloud应用程序,您需要创建一个Spring Boot项目。 并声明所需的依赖项。
声明Spring Boot Parent:
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <spring-cloud.version>Edgware.RELEASE</spring-cloud.version> </properties> ... <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
声明依赖项:
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-eureka --> <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-eureka-server --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-...</artifactId> </dependency> <!-- spring-cloud-starter-eureka spring-cloud-starter-eureka-server ... -->