这篇文章主要介绍了Java Springboot之春家族的技术体系是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。
一、为什么
弹簧引导在传统春天框架的基础上做了创新和优化,将开发人员从以往烦琐的配置工作中解放出来,并提供了大量即插即用的集成化组件,从而解决了各种组件之间复杂的整合过程,大大提高了开发效率,降低了维护成本。
比如,原本使用的是Spring MVC框架,在整个开发过程中,除了需要编写一大堆配置文件,针对每个层次引入专门的开发组件外,还需要独立部署和管理应用服务器。最后,为了对系统的运行状态进行有效监控,还需要引入一些并不好用的外部框架。
而使用了弹簧引导框架,因为它直接解决了使<强>配置,编程,部署,监控>强,好用,简单又高效。
越来越强大的弹簧引导俨然是Java EE领域的标准开发框架了。熟练掌握弹簧引导中的各项技术组件,并能够在一定程度上掌握其内部运行机制,是从Java应事用程序开发的基本要求,也是学习春云等微服务开发框架的基础。
二,春家族技术生态全景图
春框架自2003年由Rod Johnson设计并实现以来,经历了多个重大版本的发展和演进,已经形成了一个庞大的家族式技术生态圈。目前,春天已经是Java EE领域最流行的开发框架,在全球各大企业中都得到了广泛应用。
让我们先来看一下春天家族技术生态的全景图。
访问下春天的官方网站https://spring。io/
从图中可以看的到,这里罗列了春天框架的七大核心技术体系,分别是<强>微服务架构,响应式编程,云原生,网络应用,Serverless架构,事件驱动以及批处理强>
这些技术体系各自独立但也有一定交集,例如微服务架构往往会与基于春云的云原生技术结合在一起使用,而微服务架构的构建过程也需要依赖于能够提供RESTful风格的网络应用程序等。
另一方面,在具备特定的技术特点之外,这些技术体系也各有其应用场景。
举个例子
- <李>
如果我们想要实现日常报表等轻量级的批处理任务,而又不想引入Hadoop这套庞大的离线处理平台时,使用基于Spring Batch的批处理框架是一个不错的选择
李> <李>如果想要实现与卡夫卡,RabbitMQ等各种主流消息中间件之间的集成,屏蔽这些中间件在使用上的差别,那么使用基于春云流的事件驱动架构对外提供了统一的API,屏蔽了内部各个中间件在实现上的差异性。
李>在日常开发过程中,如果构建单块Web服务,可以采用弹簧引导。如果想要开发微服务架构,那么就需要使用基于弹簧引导春天的云,而春云同样内置了基于春云流的事件驱动架构。
同时,特别强调的是<强>响应式编程技术>强。响应式编程是春天5引入的最大创新,代表了一种系统架构设计和实现的技术方向,因此,我们也将从春天,春云以及弹簧响应式编程这三个技术体系进行切入,看看春天具体能够为我们解决开发过程中的哪些问题。
三,Spring框架的整体架构
当然,所有我们现在能看到的春天家族技术体系都是在Spring框架基础上逐步演进而来的。在介绍上述技术体系之前,我们先简单了解下Spring框架的整体架构,如下图所示:
【4。x】
四、弹簧引导与网络应用程序
弹簧引导构建在Spring框架基础之上,是新一代的网络应用程序开发框架。
我们可以通过下面这张图来了春天解引导的全貌:
通过浏览春天的官方网站,我们可以看到弹簧引导已经成为春天中顶级的子项目。自2014年4月发布1.0.0版本以来,春天引导俨然已经发展为Java EE领域开发网络应用程序的首选框架。
先来感受一下使用弹簧引导开发一个RESTful风格的HTTP端点所需要做的编码工作,如下所示:
@SpringBootApplication @RestController public class  DemoApplication { , ,,,@GetMapping (“/helloworld") public String  hello (), {, ,,,return “Hello 世界!“; } , public static  void main (String [], args), { ,,,,,,,SpringApplication.run (DemoApplication.class, args); ,,,} }Java Springboot之春家族的技术体系是什么