对于Spring,相信大家都非常熟悉,从出现开始,一直是企业级开发的主流。但是随着软件的发展和应用开发的不断演化,它的一些缺点也逐渐胡暴露了出来,下面,我们就一起看一下Spring的发展历程并且认识一下Spring Boot。

由来

在Spring 1.x的时候,所有的配置都通过XML,随着项目的扩大,需要频繁的在java和XML之间切换。 在Spring 2.x的时候,已经开始逐步替换掉XML配置。在Spring 3.x的时候,已经开始提供java的配置方式,在4.x的时候,已经全部推荐使用java配置的方式。随着动态语言的流行,java的开发显得格外的繁琐,体现在配置的复杂、开发效率低下、部署以及与第三方的集成繁杂,这个时候Spring Boot应运而生。

Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。简化了基于 Spring 的应用开发,通过少量的代码就能创建一个独立的、产品级别的 Spring 应用。Spring Boot 为 Spring 平台及第三方库提供开箱即用的设置,减少与第三方库集成的复杂度。 Spring Boot 的核心思想就是约定大于配置,多数 Spring Boot 应用只需要很少的 Spring 配置。采用 Spring Boot 可以大大的简化你的开发模式,所有你想集成的常用框架,它都有对应的组件支持。

特性

1.方便地创建独立的Spring应用,为基于Spring的开发提供更快的入门体验。2.内置嵌入tomcat,无需生成war文件。3.简化maven配置。4.自动配置Spring,更快、更方便的与第三方应用整合,比如消息队列、缓存等在企业级开发中常用的组件。5.提供大型项目中的非功能特性。如:指标、安全、健康检查及外部配置。6.开箱即用,无需代码生成,也无需XML配置,同时也能够通过修改默认值来满足待定的需求。

四大神器

自动配置

Spring Boot 的自动配置功能可基于类路径检测自动为运行中的应用配置依赖关系,不需要提供额外的XML配置。

Starters

Spring Boot 可提供一系列称为 POM Starters 的精细依赖关系。Spring Boot 熟知如何配置这些依赖关系,同时让组织能够扩展 Spring Boot 来配置自定义的依赖关系。

Actuator

Actuator 可提供运行状况检查和指标等生产就绪型功能。这些功能通过 Spring Boot 应用内的 REST 终端提供。只需要简单的配置就可以实现强大的监控和检查。

开发工具

这些工具旨在缩短开发和测试周期,其中包括一个可在资源变更时触发浏览器刷新的嵌入式 LiveReload 服务器。这些工具还提供了应用自动重启功能,只要类路径上的文件发生更改,该功能更即可启动。重启技术使用两种类加载器。未更改的分类(例如来自第三方 JAR 的类)被加载到基础类加载器,而开发中的分类则被加载到重启类加载器。当应用重启时,重启类加载器会被丢弃,同时创建一个新的类加载器。这种方法意味着应用重启的速度通常要比“冷启动”的速度快得多,因为基础类加载器已准备就绪且已填充完毕。从而快速实现应用的热部署,对于简单的修改这种场景能够非常有效的提高效率。

一起玩转微服务(10)——spring boot介绍的更多相关文章

  1. 构建微服务:Spring boot

    构建微服务:Spring boot 在上篇文章构建微服务:Spring boot 提高篇中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jp ...

  2. 微服务下 Spring Boot Maven 工程依赖关系管理

    单体 Spring Boot Maven 工程 最基本的 pom.xml 包含工程信息.Spring Boot 父工程.属性配置.依赖包.构建插件 <?xml version="1.0 ...

  3. Spring boot学习1 构建微服务:Spring boot 入门篇

    Spring boot学习1 构建微服务:Spring boot 入门篇 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...

  4. [转帖]微服务框架Spring Cloud介绍 Part1: 使用事件和消息队列实现分布式事务

    微服务框架Spring Cloud介绍 Part1: 使用事件和消息队列实现分布式事务 http://skaka.me/blog/2016/04/21/springcloud1/ APR 21ST,  ...

  5. Java微服务之Spring Boot on Docker

    本文学习前提:Java, Spring Boot, Docker, Spring Cloud 一.准备工作 1.1 安装Docker环境 这一部分请参考我的另一篇文章<ASP.NET Core ...

  6. spring boot 2.0.3+spring cloud (Finchley)8、微服务监控Spring Boot Admin

    参考:Spring Boot Admin 2.0 上手 Spring Boot Admin 用于管理和监控一个或多个Spring Boot程序,在 Spring Boot Actuator 的基础上提 ...

  7. SpringCloud(8)微服务监控Spring Boot Admin

    1.简介 Spring Boot Admin 是一个管理和监控Spring Boot 应用程序的开源软件.Spring Boot Admin 分为 Server 端和 Client 端,Spring ...

  8. 构建微服务:Spring boot 入门篇

    什么是Spring Boot Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而 ...

  9. 小马哥-Java 微服务实践 - Spring Boot 系列-01Java 微服务实践 - Spring Boot 系列(一)初体验

    课程github地址 https://github.com/mercyblitz/segmentfault-lessons 传统的web应用架构.微服务是一种架构.不限定什么语言 单体应用和微服务的对 ...

  10. Java 微服务实践 - Spring Boot 系列

    https://segmentfault.com/l/1500000009515571

随机推荐

  1. RocketMQ安装及入门

    本文是作者原创,版权归作者所有.若要转载,请注明出处. 本文RocketMQ版本为rocketmq-all-4.7.0,系统为win10.请各位去官网下载,也可以留言,我发安装包 RocketMQ安装 ...

  2. 潜入FLEXBOX——CSS弹性布局

    介绍 Flexbox是CSS3中的一种新的布局模式,旨在满足现代Web的更复杂的需求.本文将详细介绍新近稳定化的Flexbox语法.浏览器支持将迅速增长,因此,当支持范围足够使Flexbox实用时,您 ...

  3. Username for 'https://github.com': remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/GLSmile/pythontest.git/' 问题

    使用$ git push -u origin master 进行同步时,提示输入用户名和密码,但是我输入正确的信息后,仍然 会报Username for 'https://github.com': r ...

  4. HttpServletRequest对象,请求行、请求头、请求体

    HttpServletRequest 公共接口类HttpServletRequest继承自ServletRequest.客户端浏览器发出的请求被封装成为一个HttpServletRequest对象.对 ...

  5. break 与 continue 的作用 详解

    1.break 用break语句可以使流程跳出switch语句体,也可以用break语句在循环结构终止本层循环体,从而提前结束本层循环. 使用说明: (1)只能在循环体内和switch语句体内使用br ...

  6. (Java实现) 图的m着色问题

    图的m着色问题 [问题描述] 给定无向连通图G和m种不同的颜色.用这些颜色为图G的各顶点着色,每个顶点着一种颜色.如果有一种着色法使G中每条边的2个顶点着不同颜色,则称这个图是m可着色的.图的m着色问 ...

  7. java实现 蓝桥杯 算法提高 盾神与条状项链

    问题描述 有一天,盾神捡到了好多好多五颜六色的珠子!他心想这些珠子这么漂亮,可以做成一条项链然后送给他心仪的女生~于是他用其中一些珠子做成了长度为n的项链.当他准备把项链首尾相接的时候,土方进来了. ...

  8. TZOJ Start

    描述 After the Online Round contest, we believe that you have already known how to write programs in A ...

  9. 消费者启动,允许期间报task supervisor timed out 异常,解决

    如何解决后端项目启动时抛出 task supervisor timed out 异常 现象描述 后端项目启动时抛出如下异常,但是该后段项目能正常启动并注册到注册中心,不影响功能使用. 2018-10- ...

  10. 树莓派使用 OLED 屏显示图片及文字

    树莓派默认是不带显示屏的,如果想要查看系统的一些信息,需要使用电脑登录到树莓派,或者通过 HDMI 连接外接显示器查看.这样做总是有点麻烦,我们可以通过外接一个 OLED 屏来显示一些关键参数或者图片 ...