最近2年spring cloud微服务比较流行,Spring Cloud基于SpringBoot,为微服务体系开发中的架构问题提供了一整套的解决方案, 本文总结一下为什么要使用Spring boot,以及spring boot的特性和优缺点 ,以及spring boot与spring cloud关系。

1.为什么要在项目中使用那个spring boot?

spring boot 是一个快速开发框架,能够帮助我们快速整合第三方框架(maven依赖关系,maven依赖继承),完全采用注解化,内嵌Http服务器(tomcat,jetty,undertow),默认内置tomcat服务器,最终以java应用程序进行执行。
spring boot项目中没有web.xml

2. springboot特性
  • 独立运行spring项目。springboot可以以jar包的形式进行独立运行,使用java -jar xx.jar 就可以成功运行项目;
  • 内嵌servlet容器。内嵌容器,使得我们可以执行运行项目的主程序main函数快速运行;
  • 提供starter简化Maven配置。springboot提供了一系列的start pol用来简化maven依赖。如:常用的spring-boot-starter-web、spring-boot-starter-tomcat、spring-boot-starter-actuator等;
  • 自动配置spring。springboot会根据我们项目中类路径的jar包,为jar包的类进行自动装配Bean;
  • 应用监控。springboot提供了基于HTTP、ssh、telnet对运行时的项目进行监控。
    springboot提供了actuator组件,只需要在配置中加入spring-boot-starter-actuator依赖,通过继承AbstractHealthIndicator这个抽象类,然后在doHealthCheck()方法中检测服务健康的方法,就可以实现一个简单的监控.
3.springboot的缺点
  • 高度集成,使用的时候不知道底层实现;
  • 由于不了解底层,导致项目出了问题会很难排查.
4.spring boot 与spring cloud关系

spring boot是一个快速开放框架,能够帮助我们快速整合第三方开源框架,完全采用注解化,简化xml配置,最终以java应用程序的方式执行。
spring cloud是一套完整的微服务框架,功能强大。提供了注册中心,客户端调用工具, 服务治理(负载均衡,断路器,分布式配置中心,网关 ,服务链路,消息总线)

1.为什么使用spring boot的更多相关文章

  1. 玩转spring boot——快速开始

    开发环境: IED环境:Eclipse JDK版本:1.8 maven版本:3.3.9 一.创建一个spring boot的mcv web应用程序 打开Eclipse,新建Maven项目 选择quic ...

  2. 【微框架】之一:从零开始,轻松搞定SpringCloud微框架系列--开山篇(spring boot 小demo)

    Spring顶级框架有众多,那么接下的篇幅,我将重点讲解SpringCloud微框架的实现 Spring 顶级项目,包含众多,我们重点学习一下,SpringCloud项目以及SpringBoot项目 ...

  3. 玩转spring boot——开篇

    很久没写博客了,而这一转眼就是7年.这段时间并不是我没学习东西,而是园友们的技术提高的非常快,这反而让我不知道该写些什么.我做程序已经有十几年之久了,可以说是彻彻底底的“程序老炮”,至于技术怎么样?我 ...

  4. 玩转spring boot——结合redis

    一.准备工作 下载redis的windows版zip包:https://github.com/MSOpenTech/redis/releases 运行redis-server.exe程序 出现黑色窗口 ...

  5. 玩转spring boot——AOP与表单验证

    AOP在大多数的情况下的应用场景是:日志和验证.至于AOP的理论知识我就不做赘述.而AOP的通知类型有好几种,今天的例子我只选一个有代表意义的“环绕通知”来演示. 一.AOP入门 修改“pom.xml ...

  6. 玩转spring boot——结合JPA入门

    参考官方例子:https://spring.io/guides/gs/accessing-data-jpa/ 接着上篇内容 一.小试牛刀 创建maven项目后,修改pom.xml文件 <proj ...

  7. 玩转spring boot——结合JPA事务

    接着上篇 一.准备工作 修改pom.xml文件 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=&q ...

  8. 玩转spring boot——结合AngularJs和JDBC

    参考官方例子:http://spring.io/guides/gs/relational-data-access/ 一.项目准备 在建立mysql数据库后新建表“t_order” ; -- ----- ...

  9. 玩转spring boot——结合jQuery和AngularJs

    在上篇的基础上 准备工作: 修改pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=&q ...

  10. 玩转spring boot——MVC应用

    如何快速搭建一个MCV程序? 参照spring官方例子:https://spring.io/guides/gs/serving-web-content/ 一.spring mvc结合thymeleaf ...

随机推荐

  1. CentOS 7 升级 Linux 内核

    一.升级内核 1.更新仓库 yum -y update 2.用 ELRepo 仓库 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org ...

  2. String 相关

    1. 输出结果为 true,"hello" + 1 在编译期间就被优化成了 "hello1",因此在运行期间,变量 a 和变量 b 指向的是同一个对象 Stri ...

  3. C++实现串口的自动识别

    1.首先需要遍历注册表得到所有可用的串口 将得到的每一个串口保存到向量vector中,代码如下: // 得到所有的串口号 vector<string> cnComm::getComPort ...

  4. tongweb安装后无法启动问题

    安装后执行bin下的启动文件,但是管理界面依然无法打开 1.确认破解的dat文件是否在跟目录下,是否过期 2.如果jdk64位试试下面的方法:JAVA_HOME/jre/lib/ext/下缺少包 su ...

  5. Flutter环境搭建

    本文介绍mac上搭建Flutter环境 1.Flutter官方提供中国地区镜像地址:https://github.com/flutter/flutter/wiki/Using-Flutter-in-C ...

  6. python实现将android手机通讯录vcf文件转化为csv

    经常会遇到将手机通讯录导出到电脑并转化为在电脑中可编辑的情况,在网上搜索了很久当前不外乎两种处理方式.1.使用电脑的outlook的通讯簿功能,将手机导出的vcf文件导入到outlook的通讯录中,然 ...

  7. leetcode978

    class Solution(object): def maxTurbulenceSize(self, A: 'List[int]') -> int: n = len(A) if n == 1: ...

  8. AHA高级心血管生命支持ACLS课前自我评估测试

    AHA高级心血管生命支持ACLS课前自我评估测试 答题人:a   成绩单 您的得分:17.5 分 答对题数:7 题 您的名次:47 名 问卷满分:100 分 测试题数:40 题 参与人次:47 人   ...

  9. Virtualbox下克隆CentOS 网络配置

    Virtualbox下克隆虚拟机非常容易,也使得我们在平常搭建测试环境方便了许多.不过克隆以后的虚机并不能够直接联网,这是由于网卡的MAC地址引起的.在"控制->复制"弹出的 ...

  10. python 随机生成图片验证码背景RGB-浅色或者深色

    import random def random_color(is_light = True): return (random.randint(0 ,127) + int(is_light) * 12 ...