spring boot入门之诞生背景及优势影响

作者:字母 时间:2021-09-16 06:31:57 

spring boot诞生的背景

在spring boot出现以前,使用spring框架的程序员是这样配置web应用环境的,需要大量的xml配置。下图展示了在xml配置的时代和SpringBoot的配置量的差别。

spring boot入门之诞生背景及优势影响

  • 随着web项目集成软件的不断增多,xml配置也不断的增多,xml配置文件也在不断地增多,项目的依赖管理也越发的复杂。spring框架也因此饱受争议,配置文件难以理解且容易出错。

  • xml配置文件不但复杂,而且绝大部分属于模板配置,也就是说有80%以上的配置是不断重复的。在这个web项目里面这样配置,挪到另一个项目里面这部分配置仍然相同。

因此,像JFinal这种轻量级的web开发框架,因为其简单易用的特性,而逐渐的有了很大发展的空间。Spring社区也逐渐意识到了这个问题,在 2013 年的 SpringOne 2GX 会议上,Pivotal 的 CTO Adrian Colyer 回应了关于spring框架使用复杂度的问题,并且特别提到该平台将来的目标之一就是实现免 XML 配置和提供更佳开发体验。也就是我们今天使用到的spring boot的诞生的主要原因。

Spring 开源社区背后有强大的商业公司支持,目前已知的支持力度比较大的公司就是Pivotal 、netflix以及中国的阿里巴巴。

spring boot 改变了什么

举一个例子:自己接电线与标准化插座

Spring Boot的配置方式,就像是插头插座,就是这个标准。你第三方开源类库想接入进来,你就按照这个标准做一个starter的适配。spring MVC方式就像是手动接电线,很灵活,但是不同的人接出来的效果千差万别,而且很容易出错。Spring boot虽然灵活性不如Spring MVC的方式,并且你也不太清楚插座里面的线路是什么样,但就是方便易用。话说回来,当你习惯使用插头插座,你还期望自己是个电工不成?

spring boot入门之诞生背景及优势影响

Spring Boot 的目标不在于为已解决的问题领域提供新的解决方案,而是为平台带来另一种新的开发体验,从而简化对这些已有技术的使用。

  • 使配置变简单

  • 使监控变简单

  • 使部署变简单

  • 使开发变简单

具体这些改变如何得以体现,请学习后面的章节!

Spring Boot主要特性

  • 遵循“约定优于配置”的原则,简化配置

  • 可以完全脱离XML配置文件,采用注解配置和java Config

  • 内嵌Servlet容器,应用可用jar包执行:java -jar

  • 快速完成项目搭建、整合第三方类库,方便易用

  • 提供了starter POM, 能够非常方便的进行包管理, 简化包管理配置

  • 与Spring cloud天然集成,spring boot是目前java体系内实现微服务最佳方案

Spring Boot集成第三方类库的步骤

  • 通过maven引入springboot-XXXX-starter

  • 修改ymal或properties全局统一配置文件

  • 加入一个Java Config。这个属于个性化配置,如果使用通用配置,这一步不需要。

官方默认集成类库请参考:

https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#using.build-systems.starters

来源:https://www.kancloud.cn/hanxt/springboot2/1177580

标签:springboot,影响,入门
0
投稿

猜你喜欢

  • Spring拦截器HandlerInterceptor接口代码解析

    2022-09-05 10:51:04
  • mvn中dependencyManagement的使用详解

    2021-11-05 10:19:20
  • Java8中stream和functional interface的配合使用详解

    2023-02-27 22:44:51
  • java导出生成word的简单方法

    2023-11-23 23:07:13
  • SpringBoot文件分片上传的示例代码

    2023-06-18 11:30:15
  • 深入浅析Java中普通代码块、构造代码块与静态代码块

    2023-04-14 15:16:35
  • Java实战之在线寄查快递系统的实现

    2023-08-10 21:52:23
  • Spring Data Jpa框架最佳实践示例

    2021-11-25 00:43:01
  • SpringBoot 如何从配置文件读取值到对象中

    2023-10-13 15:43:15
  • 详解spring-boot集成elasticsearch及其简单应用

    2021-08-26 01:09:58
  • 详解SpringBoot和SpringBatch 使用

    2023-08-17 19:00:38
  • 基于Springboot一个注解搞定数据字典的实践方案

    2022-12-23 01:12:38
  • JVM教程之内存管理和垃圾回收(三)

    2023-11-10 15:49:54
  • java微信公众号支付示例详解

    2023-11-15 05:52:01
  • java如何获得redis所有的key-value

    2022-03-13 12:22:14
  • java求余的技巧汇总

    2023-08-06 06:33:16
  • Java使用Redisson分布式锁实现原理

    2023-12-10 11:07:30
  • 详解Alibaba Java诊断工具Arthas查看Dubbo动态代理类

    2021-08-04 03:16:28
  • Java流程控制语句最全汇总(上篇)

    2023-11-03 01:57:48
  • spring注解之@Valid和@Validated的区分总结

    2023-11-01 07:51:42
  • asp之家 软件编程 m.aspxhome.com