SpringBoot面试准备 第一天

什么是 Spring Boot?

  1. 简化 Spring 应用程序开发的框架,通过自动配置起步依赖简化的配置方式,使开发人员能够更快速、方便地创建和配置 Spring 应用程序,提高开发效率和开发体验
  2. 目标是使开发人员能够更加快速方便地创建和配置 Spring 应用程序,同时尽可能地减少样板代码和繁琐的配置。它通过自动配置、约定大于配置和起步依赖等特性,使得开发人员能够更专注于业务逻辑的实现,而不需要过多关注底层的配置细节。

起步依赖有哪些?

  1. 数据库(spring-boot-starter-jdbc):使用JDBC与Tomcat JDBC连接池的启动器
  2. 消息队列
  3. Web开发(spring-boot-starter-web):使用SpringMVC构建Web,包括RESTful应用程序,使用Tomcat作为默认的嵌入式容器的启动器
  4. JPA相关功能(spring-boot-starter-jpa):使用Spring JPA与Hibernate的启动器

SpringBoot是如何管理版本依赖?

        springboot底层使用maven管理依赖,通过控制pom.xml完成细节配置,但在这当中没有发现有管版本的地方,注意看我们有spring-boot-starter-parent这个父pom

Spring Boot 有哪些特性?

自动配置根据应用程序的依赖和配置,自动配置 Spring 应用程序的各种组件,如数据源、Web 容器等,减少了手动配置的工作量
起步依赖提供了一系列预配置的依赖项,称为起步依赖(Starter Dependencies),可以快速集成常用的技术栈,如数据库、消息队列、Web 开发
嵌入式容器内置了多种嵌入式容器,如 Tomcat、Jetty 等,可以将应用程序打包成可执行的 JAR 文件,并直接运行,无需部署到外部容器
Actuator提供了对应用程序的监控和管理功能,包括健康检查、指标收集、配置信息等,方便运维和监控应用程序
简化的配置提供了简化的配置方式,如 application.properties 或 application.yml 文件,可以集中管理应用程序的配置信息

 Spring boot 相对 Spring有什么优势 ?

优势含义

可快速构建独立的Spring应用

根据需求选择对应的场景依赖,Spring Boot会自动添加该场景所需要的全部依赖并提供自动化配置,在无需额外手动添加配置的情况下可以快速构建出一个独立的Spring应用程序

嵌入Tomcat、Jetty和Undertow服务器(无需部署WAR文件)

直接将项目打成JAR包的形式,项目内嵌了Tomcat、Jetty和Undertow服务器,因此在部署过程中减少了对第三方插件的依赖和管理

提供依赖启动器简化构建配置

在引入的依赖启动器“starter”内部已经包含了对应开发场景所需的依赖,并会自动下载和拉取相关JAR包,例如,在Web开发时,只需在构建项目时选择对应的Web场景依赖启动器spring-boot-starter-web,Spring Boot项目便会自动导入spring-webmvc、spring-web、spring-boot-starter-tomcat等子依赖,并自动下载和拉取Web开发需要的相关JAR包

自动化配置Spring和第三方库

提供的默认自动化配置类就会生效,开发者无需再手动进行配置文件的配置(除非开发者修改了相关默认配置,例如Redis地址、密码等),从而极大减少了开发人员的工作量,提高了程序的开发效率

提供监控应用

提供了一些用于生产环境运行时的特性,例如指标、健康检查和外部化配置

极少的代码生成和XML配置

在需要自定义配置的情况下,Spring Boot更加提倡使用Java config(Java配置类)替换传统的XML配置方式,这样更加方便查看和管理

 Spring Boot 的核心注解是哪个?

核心注解:启动类上的@SpringBootApplication

注解含义

@SpringBootConfiguration

@SpringBootConfiguration里面就只有一个@Configuration主要注解,实现配置文件的功能

@EnableAutoConfiguration

由 @AutoConfigurationPackage和@Import(EnableAutoConfigurationImportSelector.class)这两个组成的

打开自动配置的功能,帮助SpringBoot应用将所有符合条件的@Configuration配置都加载到当前SpringBoot,并创建对应配置类的Bean,并把该Bean实体交给IoC容器进行管理

@ComponentScan

Spring组件扫描注解,默认就会装配标识了@Controller,@Service,@Repository,@Component注解的类到spring容器中

 什么是 JavaConfig?

        用于配置 Java 应用程序的方式,它是 Spring 框架中的一种替代方案,用于替代传统的 XML 配置文件方式

        允许开发人员使用 Java 代码来定义和配置应用程序中的各种组件,包括 Bean 的定义、依赖关系、切面等。通过 JavaConfig,可以将应用程序的配置集中在一个或多个 Java 类中,使得配置更加可读、可维护,并且可以利用 Java 语言的特性进行编程。

JavaConfig 的优点?

类型安全JavaConfig 使用 Java 代码进行配置,可以在编译时进行类型检查,避免了在 XML 配置文件中可能出现的拼写错误或类型错误
易于重构 JavaConfig 使用 Java 代码进行配置,可以利用 IDE 的重构功能,轻松地进行重命名、提取方法等操作,提高了代码的可维护性
面向对象JavaConfig 可以利用 Java 语言的面向对象特性,如继承、多态等,更加灵活地进行配置和组件定义
可读性和可维护性JavaConfig 使用 Java 代码进行配置,配置信息直观可见,易于理解和维护。相比于 XML 配置文件,JavaConfig 更加直观和易读
编程能力JavaConfig 允许开发人员使用 Java 语言的编程能力,如条件判断、循环等,可以根据需要进行动态的配置

        

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值