【微服务 从0开始 】Spring Cloud 简单搭建一个微服务项目

【微服务 从0开始 】Spring Cloud 简单搭建一个微服务项目Springboot 简介构建一个微服务

在这里插入图片描述

?专栏介绍

【秒懂·云原生】 目前主要更新微服务,一起学习一起进步。

?本期介绍

前言:

工欲善其事,必先利其器。在对Spring Cloud各部分组件进行具体介绍之前,我们会对Spring Cloud微服务的基础Spring Boot进行介绍。Spring Boot是Spring一套快速配置开发的脚手架,可以基于Spring Boot快速集成开发单个Spring应用。

Spring Cloud是基于Spring Boot实现的云应用开发工具,很大一部分实现依赖于SpringBoot。可以说Spring Boot是整个Spring Cloud微服务架构的服务基础。

Spring boot 介绍

在构建第一个微服务之前,我们先了解一下Spring boot

Spring框架功能很强大,但是就算是一个很简单的项目,开发者也需要进行大量的配置工作,因此在Spring 4.0之后出现了Spring Boot框架,它的作用很简单,就是帮助开发者自动配置Spring的相关依赖。Spring Boot是Pivotal团队于2013年推出的全新项目,主要用来简化Spring开发框架的开发、配置、调试和部署工作,同时在项目内集成了大量易于使用且实用的基础框架。Spring Boot使用了特殊的方式来进行初始化配置,这使得开发者不需要额外定义样板化的配置。

Spring boot 与Spring Cloud

  • Spring Boot是Spring的一套快速配置脚手架,可以基于Spring Boot快速开发单个服务,Spring Cloud是一个基于Spring Boot实现的云应用开发工具。
  • Spring Boot专注于快速、方便集成单个服务,Spring Cloud是关注全局的服务治理框架。
  • Spring Boot使用了约定优先于配置的理念,有很多集成方案已经设置好,减少了用户的配置,Spring Cloud很大一部分是基于Spring Boot实现的。
  • Spring Boot可以离开Spring Cloud独立使用开发项目,但是Spring Cloud离不开Spring Boot,属于依赖与被依赖的关系。

Spring boot 核心特性

  • SpringApplication:提供一种简便的方式来引导启动Spring应用程序,通过main的方式启动应用。
  • 外部化配置(External Configuration):通过外部化配置的方式,可以让开发者自定义相关配置以使相同的应用运行于不同的环境中。
  • Profiles: Spring Profiles可以将配置文件隔离成不同的模块,并且使这些模块中的配置只在特定的环境中生效。
  • 日志(Logging) : Spring Boot完善的日志系统更利于开发者调试和监控应用程序。·MVC: Spring Web MVC框架,使得开发者得心应手地搭建Web后端应用。
  • 嵌入式容器(Embedded Containers):支持内置的Tomcat、Jetty和Undertow服务器,使得应用程序通过内嵌的服务器容器一键启动。
  • SQL:提供了使用SQL数据库的广泛支持,从直接通过JDBC(JdbcTemplate)访问数据库到通过对象关系映射框架(如Hibernate)访问数据库等等。
  • NoSQL:集成了大量的框架来提供使用NoSQL数据库的技术,支持Redis、MongoDB、Neo4j、Elasticsearch、Solr Cassandra、Couchbase和LDAP等诸多NoSQL数据库,这些NoSQL数据库的使用都可以由Spring Boot提供相关的自动配置实现。
  • 消息系统(Message)︰提供了对消息系统的广泛支持,包括JMS、RabbitMQ.Kafka和WebSocket等。
  • 测试(Testing)︰提供了一系列实用工具和注解,以帮助开发者测试应用程序。
  • 自动配置(Auto-Configuration):自动配置不仅减少了Spring框架中本该由开发者自主实现Bean相关配置,也使得开发者具备根据自己的业务需要为应用程序定义各种特定Bean的能力。
  • 监控(Monitoring) : Spring Boot的监控能够使开发者更好地掌控应用程序的运行状态。

构建一个微服务

也就是搭建一个Spring boot 项目,接下来介绍两种搭建Spring boot项目的流程。

一、IDEA生成

使用IDEA生成项目的主要过程如下:

1、Spring Initializer创建项目。

在这里插入图片描述

在这里插入图片描述

4、Spring boot项目就建好了在这里插入图片描述

在这里插入图片描述
解释一下这两个注解:

@RestController组合了@Controller和@ResponseBody注解,表明该类可以处理HTTP请求,并且返回JSON类型的响应。Spring lnitializer会自动为应用生成对应的启动类,一般以*Application方式进行命名。

二、lnitial生成

如果不想使用IDEA的话,也可以在Spring官方网站https://start.spring.io/创建项目,再将创建好的项目下载到本地,解压之后导入到IDEA中。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/225050.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 上午10:14
下一篇 2026年3月17日 上午10:15


相关推荐

  • css背景渐变透明和方向

    css背景渐变透明和方向css 背景颜色渐变透明左到右 background image linear gradient toleft red rgba 255 0 0 1 右到左 background image linear gradient toright red rgba 255 0 0 1

    2026年3月18日
    1
  • PHP json_encode float

    PHP json_encode floatPHPjson_encodefloat乐杨俊

    2022年7月14日
    20
  • 服务熔断治理

    服务熔断治理一 基础概念二 SpringCloudH 是基于 Netflix 的开源框架 Hystrix 实现 该框架实现了服务熔断 线程隔离等一系列服务保护功能 对于熔断机制的实现 Hystrix 设计了三种状态 1 熔断关闭状态 Closed 服务没有故障时 熔断器所处的状态 对调用方的调用不做任何限制 2 熔断开启状态 Open 在固定时间窗口内 Hystrix 默认是 10 秒 接口调用出错比率达到一个阈值 Hystrix 默认为 50

    2026年3月26日
    2
  • 在 Linux 下搭建 Git 服务器

    在 Linux 下搭建 Git 服务器

    2021年10月23日
    39
  • Loadrunner教程–常用操做流程[通俗易懂]

    Loadrunner教程–常用操做流程[通俗易懂]作者博客:vps精选网1loadrunner压力测试一般使用流程1.1loadrunner压力测试原理本质就是在loadrunner上模拟多个用户同时按固定行为访问web站点。其中固定行为在loadrunner中是通过录制脚本定义的,多个用户同时访问的策略是在loadrunner的场景中定义的。1.2压测思路通过loadrunner进行压力测试web应用的主要思路分两步:第…

    2022年5月24日
    42
  • ElemType是什么?

    ElemType是什么?在定义结构体array的时候有这样一段:typedefstruct{   ElemTypedata[maxsize];   intlength;}array;在《数据结构》中,关于数据元素的类型定义均用“ElemTypee;”来

    2022年5月20日
    102

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号