SpringBoot-学习-1-概念篇


前言

SpringBoot是目前项目中用的最广泛的框架之一,一直在使用但是从来没有仔细深入的学习过,从这一篇开始会持续的将SpringBoot的学习过程完整的记录下来,会包含系统的学习使用、源码阅读、案例分析、踩坑经验等,期待体系化的的技术提升。


一、约定优于配置

概念:约定优于配置,又称按约定编程,是一种软件设计规范。
本质上是对系统、类库或框架中的一些东西假定一个大众化合理的默认值(或者默认格式)
理解:比如项目的结构大家都会使用一些固定名称来表示对应作用的包,dao包、service包等;又比如一些类名的命名Abstract开头的是抽象类这种都是一些规范
规范只是规范,不是强制标准,但是使用规范会让世界更美好,非得特立独行创造自己的规范可能得不偿失

举例如下:
例如在模型中有一个名为User的类,那么对应在数据库中就会存在一个名为user的表,此时无需做额外的配置就可以(遵守约定),但如果你想将表名改成t_user的话(也就是偏离约定),那你就需要手动进行映射配置

好处:让世界更美好,减少不必要的配置开发

二、SpringBoot概念

1.什么是SpringBoot

spring官方的网站:https://spring.io/
Spring官网对SpringBoot的介绍
我们可以看到官网上对SpringBoot的描述:Spring Boot 可以轻松创建可以“直接运行”的独立的、生产级的基于 Spring 的应用程序

下面是百度百科上的一些描述:
在这里插入图片描述
我们可以看到SpringBoot是基于Spring4.0设计的,为什么重点强调呢?我们都知道在Spring3.0的时候就已经支持了JavaConfig的配置方式,也就是说在Spring3.0版本我们就可以无需编写像applicationContext.xml这样的配置文件了,但是spring3.0版本对应的是servlet3.0规范,虽然可以舍弃xml文件,但是依然建议保留xml文件配置,但是Spring4.0版本就已经可以彻底的舍弃掉所有的xml文件了。
那既然SpringBoot是基于Spring4.0版本设计的,也就是说他可以完全舍弃掉xml文件,需要配置的时候都可以使用javaConfig方式进行配置

总结:什么是SpringBoot:SpringBoot就是可以让你尽快跑起来Spring应用程序并且尽可能减少你的配置文件的Spring框架

2.SpringBoot主要特性

1、SpringBoot Starter(起步依赖)

将常用的依赖分组进行了整合,将其合并到一个依赖中,这样就可以一次性添加到项目的Maven或者Gradle构建中
在这里插入图片描述

2、使编码变得简单

SpringBoot采用JavaConfig的方式对Spring进行配置,并且提供了大量的注解,极大地提高了工作效率

看图:
在这里插入图片描述
我们前面说了springboot是基于spring4.0设计的,spring3.0以后就支持了JavaConfig的方式配置,但是4.0以后才可以完全舍弃xml的配置方式,SpringBoot是在4.0的基础上,所以它采用的就是JavaConfig的配置方式

现在要生成一个Bean对象并存到IOC容器中要怎么做呢?举个例子就知道了
在这里插入图片描述
可以看到,我们不需要再写applicationContext.xml文件,然后再定义bean标签指定坐标等等,直接一个JavaConfig类两个注解就可以了

3、自动配置

SpringBoot的自动配置特性利用了Spring对条件话配置的支持,合理的推测应用所需要的bean并自动化配置他们
在这里插入图片描述
这里有个疑问:SpringBoot在启动的过程中都会对哪些配置类里面的bean进行装配?自动装配的底层原理又是什么?

4、部署更简单

SpringBoot内置了三种Servlet容器,Tomcat,Jetty,undertow.我们只需要一个
Java的运行环境就可以跑SpringBoot的项目了,SpringBoot的项目可以打成一个jar包。

问题遗留

1、SpringBoot在启动的过程中都会对哪些配置类里面的bean进行装配?自动装配的底层原理又是什么?

总结

本文是SpringBoot的第一篇,重点记录了一些基本的概念和SpringBoot的几大特性,遗留的问题会在后面学习到以后回来补充答案

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值