springboot思想入门

一:什么是springboot
springboot快速开发解决方案,springboot不是一个框架技术。比如maven不是jar包,maven是为了更好管理jar包,同理springboot不是技术框架,springboot是为了让我们更好更快更方便地整合框架。

二:为什么使用springboot
传统spring的缺点:
1:xml配置文件太多,台繁琐

2:整合一个框架需要导入的jar包太多

springboot的优点:
1:简化依赖管理(起步依赖):在Spring Boot中提供了一系列的Starter POMs,将各种功能性模块进行了划分与封装,让我们可以更容易的引入和使用,有效的避免了用户在构建传统Spring应用时维护大量依赖关系而引发的JAR冲突等问题。

2:自动化配置:Spring Boot为每一个Starter都提供了自动化的Java配置类,用来替代我们传统Spring应用在XML中繁琐且并不太变化的Bean配置;同时借助一系列的条件注解修饰,使得我们也能轻松的替换这些自动化配置的Bean来进行扩展。

3:嵌入式容器:除了代码组织上的优化之外,Spring Boot中支持的嵌入式容器也是一个极大的亮点(此处仿佛又听到了Josh Long的那句:“Deploy as a Jar, not a War”),借助这个特性使得Spring Boot应用的打包运行变得非常的轻量级。

4:生产级的监控端点: spring-boot-starter-actuator的推出可以说是Spring Boot在Spring基础上的另一个重要创新,为Spring应用的工程化变得更加完美。该模块并不能帮助我们实现任何业务功能,但是却在架构运维层面给予我们更多的支持,通过该模块暴露的HTTP接口,我们可以轻松的了解和控制Spring Boot应用的运行情况。

5:swagger管理所有的接口信息,其实就是一个线上的api开发文档
小结:springboot两个核心思想起步依赖和自动配置

起步依赖
介绍第一个起步依赖spring-boot-starter-web,这个依赖包含了要实现web功能所有的jar包
在这里插入图片描述
spring-boot-starter-web:
l spring-boot-starter: spring核心jar,自动配置支持jar、日志和YAML支持jar
l spring-boot-starter-tomcat: 内置tomcat
l hibernate-validate: hibernate:数据校验
l Jackson-databind: json和Java对象转换
l Spring-web: spring核心包
l Spring-webmvc: springmvc包

自动配置
有@springbootApplication注解的类就是引导类,@springbootApplication注解是一堆注解的集合。@springbootApplication注解组成部分:
在这里插入图片描述
@EnableAutoConfiguration --> @Import(EnableAutoConfigurationImportSelector.class) -->
AutoConfigurationImportSelector
该类下面有如下方法,该方法确定自动配置哪些内容
在这里插入图片描述

找到spring-boot-autoconfigure jar包,点击展开你就会发现spring.factories属性配置文件
在这里插入图片描述
这个属性配置文件就指明了springboot工程启动的时候需要做哪些自动配置:
在这里插入图片描述
上面都是类的全限定名,那么这些类放在哪里呢?就在spring-boot-autoconfiguration.jar下面:
在这里插入图片描述
从上面可以看出springboot工程一起动,其实自动帮助我们配置很多东西比如(solr、redis、mq、web等等),只不过这些以前是程序员手动通过xml配置的,现在呢,是springboot通过java配置的方式自动帮助我们配置的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程治铭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值