Spring Boot 基本知识

简介: 本文目录1. 什么是Spring Boot2. Spring Boot的由来3. Spring Boot的优点4. Spring Boot使用场景5. Spring Boot诞生7. Spring Boot 江湖地位

1. 什么是Spring Boot

Spring Boot是由Pivotal团队在2014年4月发布的开源轻量级开发框架,一经发布迅速在全世界开发者中流行起来。


Spring Boot为简化Spring开发而生,Boot一词的含义即为快速引导启动,使用Spring Boot之后,开发Spring应用变得非常轻便顺畅。


2. Spring Boot的由来

你是否已经厌倦了开发一个Spring应用繁琐的操作过程:


引入各种依赖,有时候还需要解决依赖冲突。每次不是在寻找依赖,就是在更换依赖的路上,心情烦躁。

编写各种配置,web.xml配置、Spring配置、SpringMVC配置等。项目配置往往大同小异,毫无乐趣。

注册各种组件,ViewResolver、RestTemplate、DataSource。项目组件往往千篇一律,昏昏欲睡。

在开发环境中配置容器,并将项目部署到容器上进行测试。就不能像main方法那样一键启动么?

Pivotal团队,也就是开发Spring框架的团队,也意识到了这些问题,于是推出Spring Boot。Spring Boot基于约定优先于配置的理念,使Spring应用开发者重新回归简单,聚焦业务逻辑,而不是繁琐的项目配置、操作过程。


3. Spring Boot的优点

Spring Boot为简化Spring开发而生,它确实也做到了:


针对应用研发场景提供starter模块,整合依赖配置,告别手动逐一添加坐标的方式。

约定优于配置,提供约定俗成的默认配置,无须再编写各种各样的配置文件,只有个性化配置才需要手工设定。

为类库中的类自动注册bean组件,大多数场景常用组件无须再手工注册,拿来即用。

内置servlet容器,开发时可一键运行。同时可打包为jar,部署后可一行命令启动。

使用Spring Boot之后,常用配置及组件都已就绪,直接开始开发就可以了。


4. Spring Boot使用场景

使用Spring开发企业应用的场景,都可以使用Spring Boot来加速项目搭建、开发、测试的过程。Spring Boot开箱即用的特质也十分契合当今流行的微服务理念,现在非常流行的Spring Cloud就使用Spring Boot作为单个微服务的基础框架。


5. Spring Boot诞生

Spring来源于EJB的复杂与繁琐,SpringBoot来源于Spring的复杂与繁琐。


先说下Spring咋来的,long long ago,很久很久之前,Java官方级企业应用开发框架是EJB。


EJB我也没用过,但是听说很复杂,很繁琐,我大体也能想到,因为我很久之前用过Struts1,相比于SpringMVC,确实繁琐多了,配置多、规则多、用法多,有时候编程很多时间在写框架要求的东西,而不是业务逻辑。


所以坚持程序应该简洁,应该尽可能的关注业务逻辑,大神Rod Jahnson就搞出了Spring这样的轻量级框架,并迅速受到了全世界开发人员的追捧,一直到现在。


然而Spring其实,也挺麻烦,需要很多配置,一些配置完全跟业务逻辑无关,纯属模板式的配置性代码。那么既然有这么多模板代码,能不能直接去掉这些模板代码,这些配置的内容采用默认配置,需要的时候再手工指定就好了。


所以SpringBoot就诞生了,就是为了简便开发,开箱即用,将很多乱七八糟的配置采用默认的方法省略了手工配置过程。


说白了SpringBoot就是为了简化Spring开发而生的。


7. Spring Boot 江湖地位

SpringBoot现在江湖地位很高,一方面因为它非常简单,被越来越多的一线开发人员使用,现在大多数都在使用SpringBoot了,所以没用的建议也抓紧用起来,相比传统的Spring项目确实更加顺手,谁不喜欢快速简洁呢?


另一方面,由于现在微服务的兴起,SpringBoot非常契合微服务的理念,就是每个服务都很微小便捷快速么,SpringBoot就是这样的。所以Spring Cloud这样的微服务全家桶框架,具体实现上就是基于SpringBoot的。


江湖地位很高,可以说达到了引领潮流的位置,必须搞起!

相关文章
|
2月前
|
Java 应用服务中间件 Maven
SpringBoot 项目瘦身指南
SpringBoot 项目瘦身指南
86 0
|
2月前
SpringBoot+Mybatis-Plus+PageHelper分页+多条件查询
SpringBoot+Mybatis-Plus+PageHelper分页+多条件查询
48 0
|
9月前
|
JSON Java 数据格式
三万字盘点Spring/Boot的那些常用扩展点(下)
Spring对于每个Java后端程序员来说肯定不陌生,日常开发和面试必备的。本文就来盘点Spring/SpringBoot常见的扩展点,同时也来看看常见的开源框架是如何基于这些扩展点跟Spring/SpringBoot整合的。 话不多说,直接进入正题。
|
9月前
|
Java Go Nacos
解决Spring Boot与Nacos集成时的类加载问题: java.lang.NoClassDefFoundError: org/springframework/boot/context/prope
解决Spring Boot与Nacos集成时的类加载问题: java.lang.NoClassDefFoundError: org/springframework/boot/context/prope
140 1
|
2月前
|
XML Java 数据库连接
Spring Boot的数据访问之Spring Data JPA以及Hibernate的实战(超详细 附源码)
Spring Boot的数据访问之Spring Data JPA以及Hibernate的实战(超详细 附源码)
63 0
|
6天前
|
运维 Java 关系型数据库
Spring运维之boot项目bean属性的绑定读取与校验
Spring运维之boot项目bean属性的绑定读取与校验
13 2
|
6天前
|
存储 运维 Java
Spring运维之boot项目开发关键之日志操作以及用文件记录日志
Spring运维之boot项目开发关键之日志操作以及用文件记录日志
17 2
|
6天前
|
Java Maven
springboot项目打jar包后,如何部署到服务器
springboot项目打jar包后,如何部署到服务器
18 1
|
6天前
|
XML 运维 Java
Spring运维之boot项目打包jar和插件运行并且设置启动时临时属性和自定义配置文件
Spring运维之boot项目打包jar和插件运行并且设置启动时临时属性和自定义配置文件
13 1
|
6天前
springboot2.4.5使用pagehelper分页插件
springboot2.4.5使用pagehelper分页插件
12 0