1.1.1 Spring Boot特性
作为一个快速开发框架,在项目技术层次上,Spring Boot框架处于Spring框架之上,其直接面向开发者,帮助开发者解决决策、管理、技术层面的各种问题,目的是让编码、配置、部署变得更简单。之所以能够达到以上目的,是因为Spring Boot具有管理依赖、简化配置、快速运行和推荐技术四个特性。
管理依赖:Spring Boot内部定义了基础文件Maven pom.xml,其可以管理Java开发中所用到的各项技术,并对它们的版本号和依赖关系进行维护,从而简化Maven的配置,避免经常遇到对各种技术版本选择的问题,降低了版本冲突带来的风险。
简化配置是指提供开发者习惯的默认配置,从而减少大量的 XML(Extensible Markup Language,可扩展标记语言)配置,让开发和运维变得简单。
快速运行是指内嵌Servlet容器(Tomcat、Jetty、Undertow)或Reactive容器(基于Netty的Webflux),无须以war包的方式部署项目,从而实现了可独立运行的项目。也就是说,Spring Boot项目利用main()方法驱动运行,部署时以jar包的方式运行,当然开发者也可以根据自己的需要选择以war包的方式运行。
推荐技术是指在开发的各个环节中内置了某些常用技术,这些技术有的属于 Spring 家族,有的由第三方提供,如模板引擎、持久层框架、NoSQL 框架、安全框架、日志系统、系统的各项监控等。开源社区的繁荣是促使Java语言成为世界上使用人数最多的重要原因,但同时它又导致开发者需要解决同一个领域中出现多种不同技术的问题,如持久层中的Hibernate和MyBatis、安全框架中的Spring Security和Shiro等,这就需要开发者在技术选型时要深入调研,反复对比。Spring Boot推荐的技术都是经得起考验的,利用它们简化配置的优点可以做到与项目无缝衔接,减少配置,甚至零配置。随着Spring Boot的流行,它推荐的技术也会更加流行,因此学习Spring Boot不仅是学习Spring Boot框架本身,也是学习Spring Boot所推荐的技术。