大厂面试题:【SpringBoot篇面试题:1-5题】

励志是给人快乐,激励是给人痛苦。

1、什么是Spring Boot?

  • 用来简化Spring应用初始搭建以及开发过程
  • 使用特定的方式来进行配置 properties /yml 文件
  • 创建独立的Spring应用程序main方法运行
  • 嵌入Tomcat无需部署war文件
  • 简化maven配置
  • 自动配置Spring添加对应功能Starter自动化配置

总结: SpringBoot来简化Spring应用开发,约定大于配置去繁化简,just run就能创建一个独立的,产品级别的应用。

2、Spring Boot 有哪些优/缺点?

优点

  • 快速创建独立运行的Spring 项目,与主流框架继承
  • 使用嵌入式的Servlet容器,无需应用打包成war包
  • Starters自动依赖与版本控制
  • 大量的自动配置、简化开发也可以修改默认值
  • 准生产环境的运行应用来监控
  • 与云计算的天然继承
  • 提供了许多插件,以便嵌入式和内存数据库工作非常容易
  • 减少了大量的开发时间并提高生产力
  • 解决了Spring的弊端

缺点

  • 使传统项目微服务改造难(不愿意去改)
  • 使用简单极易上手精通难,不知不觉屏蔽了底层的细节(有时间卷与不卷自己抉择)

就目前来看,这些缺点就不是缺点,只是强加凑出来的缺点。从生产上来讲微不足道。

3、Spring Boot 、Spring MVC 和Spring有什么区别?

Spring

  • Spring最重要的是依赖注入
  • 所有 SpringModules 不是依赖注入就是 IOC控制反转。
  • 当我们恰当的使用 DI 或者是 IOC 的时候,
  • 我们可以开发松耦合应用。松耦合应用的单元测试可以很容易的进行。

Spring MVC

  • Spring MVC 提供了一种分离式的方法来开发 Web 应用。
  • 通过运用像 DispatcherServelet,MoudlAndView
    和 ViewResolver 等一些简单的概念,
    开发 Web 应用将会变的非常简单

Spring Boot

  • Spring 和 SpringMVC 的问题在于需要配置大量的参数
  • Spring Boot可以建立独立的Spring应用程序;
  • 内嵌了如Tomcat,Jetty和Undertow这样的容器,也就是说可以直接跑起来,用不着再做部署工作了;
  • 无需再像Spring那样搞一堆繁琐的xml文件的配置;
  • 可以自动配置(核心)Spring。SpringBoot将原有的XML配置改为Java配置,将bean注入改为使用注解注入的方式(@Autowire),并将多个xml、properties配置浓缩在一个appliaction.yml配置文件中。
  • 提供了一些现有的功能,如量度工具,表单数据验证以及一些外部配置这样的一些第三方功能;
  • 整合常用依赖(开发库,例如spring-webmvc、jackson-json、validation-api和tomcat等),提供的POM可以简化Maven的配置。当我们引入核心依赖时,SpringBoot会自引入其他依赖

别有压力,能说出来就行,这些螺丝不是多重要

4、什么是自动配置?

  • Spring 和 Spring MVC 的问题在于需要配置大量的参数,过于繁琐,在此基础上,SpringBoot提供了配置应用程序和框架所需的基本配置这就是自动配置。
  • 基于 @EnableAutoConfiguration 的自动配置功能拥有更加强大的调控能力,通过配合比如基于条件的配置能力或者调整加载顺序,我们可以对自动配置进行更加细粒度的调整和控制。

5、什么是Spring Boot Stater?

启动器是一套方便的依赖描述符,它可以放在自己的程序中,你可以一站式的获取你所有需要的Sping和相关技术,而不需要依赖描述符的通过示例代码搜索和复制粘贴的负载。

举例: 你想使用Spring 和 JPA 访问数据库,只需要你的项目包含 Spring-boot-starter-data-jpa 依赖项你就可以完美的运行了。

PS: 我也不想摆烂了,疫情当下。
希望国家能够在1-2个月全部控制住,或者有更好的方案。
让大家可以安心工作,保障社会稳定。

万里寒光生积雪,三边曙色动危旌。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值