浅谈SpringBoot

一、为什么要学习SpringBoot

        前面学习了Spring,知道Spring的核心功能是存、取对象。从spring开始,对象的生命周期的控制权不再由开发人员控制,而是由Spring控制。Spring创建对象并存储对象,开发人员只需要从Spring中获取对象即可。在18年以后,SpringBoot火爆起来后,SpringBoot成为了主流的开发框架。在这里提一下SpringCloud,SpringCloud是一套组件,是一套解决方案,是一套微服务的思想。什么是微服务?微服务就是将原来的一个项目分为几个模块,把这些模块彼此独立出来。

微服务的好处

1、如果这台机器挂了,不会出现整个项目都挂了的情况,因为不同的模块可能部署在不同的服务器上。

2、使用微服务,可以达到模块化,所以一般公司招聘的时候比较好招到人,因为模块彼此独立,一个模块由一个组做,利于代码独立。

3、同一台机器或者多台程序,部署多份程序。

        Spring的诞生是为了简化java程序开发,SpringBoot的诞生是为了简化Spring程序的开发,SpringBoot本质上还是Spring框架,但SpringBoot让开发变得更方便。举个例子加深理解:Spring和SpringBoot的关系就像老式汽车和智能汽车。汽车的诞生是为了解决出行的效率低下问题,而智能汽车的诞生是为了解决人类对生活质量的高要求,但是不管是哪种汽车,都是为了让人们更方便的去使用汽车。对于Spring和SpringBoot,同样适用,都是为了程序员更方便地去开发java程序。

1.1、Spring框架的开发痛点

1.1.1、需考虑依赖与当前Spring框架的版本适配问题

        比如之前创建Spring项目时,想要在项目中添加一些依赖(比如Lombok依赖,spring-context依赖,spring-beans依赖…),需要从中央仓库找到依赖,将其代码复制下来之后粘贴到pom.xml中,并且依赖是有很多版本的,你需要凭借自己所具有的经验选择与当前Spring版本所对应的依赖版本。

1.1.2、需要考虑Web容器

        当创建了一个Spring项目,因为某种需求需要将此项目升级成SpringMVC项目,目前Spring项目所配置的依赖不足以让SpringMVC运行起来,还需依赖Web容器Tomcat。此时就需要在IDEA中安装插件smart Tomcat(社区版IDEA需要安装,专业版IDEA系统已经自动帮忙配置Tomcat Server),本地配置Tomcat,比较麻烦。

1.2、SpringBoot优点

1.2.1、 可以快速添加依赖

        不需要再到中央仓库复制粘贴依赖了,在SpringBoot中只需要勾选条件即可,也不需要根据自己的经验判断版本兼容问题,这些都由SpringBoot帮我们管理起来了。

1.2. 2、快速添加新框架

        项目开发阶段,想新添加一个框架(SpringMVC、mybatis…)咋办?安装插件去快速集成框架即可。

1.2.3、内置Web容器

        内置了Web容器。在Spring项目之前,如果我们想要在浏览器运行一个项目,我们需要像Servlet时代一样,在IDEA中安装插件smart Tomcat,本地下载安装Tomcat,因为这些Spring core(java 程序项目)没有具备http能力。

2、SpringBoot核心

1、可以快速添加依赖。
2、内置Web容器。
3、自动装配机制。

2.1 常见面试题:谈谈SpringBoot中的自动装配机制

所谓的自动装配指的是:关于数据库的操作。

在Spring和SpringMVC时代,我们想要使用数据库的一个对象时,需要进行三步操作:1、需要在pom.xml中添加mysql的依赖。2、配置一个Spring的DataSource的xml。3、写代码。上述操作叫做手动装配。而自动装配把这些链接信息还写在配置文件里,但SpringBoot会根据链接信息,在Spring项目启动时,自动帮你构建DataSource对象。

总的来说,自动装配其实就是SpringBoot帮咱们自动构建了一个复杂对象,构建好的对象可以直接使用。

在servlet时代,这些复杂对象是需要自己去构建的。

  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值