跳槽涨薪季面试题之spring boot框架
Posted 全栈开发者社区
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跳槽涨薪季面试题之spring boot框架相关的知识,希望对你有一定的参考价值。
面试题一:
面试题二:
面试题三:
面试题四:
1.什么是springboot
用来简化spring应用的初始搭建以及开发过程 使用特定的方式来进行配置(properties或yml文件)
创建独立的spring引用程序 main方法运行
嵌入的Tomcat 无需部署war文件
简化maven配置
自动配置spring添加对应功能starter自动化配置
答:spring boot来简化spring应用开发,约定大于配置,去繁从简,just run就能创建一个独立的,产品级别的应用
2.Spring Boot有哪些优点?
答:-快速创建独立运行的spring项目与主流框架集成
-使用嵌入式的servlet容器,应用无需打包成war包
-starters自动依赖与版本控制
-大量的自动配置,简化开发,也可修改默认值
-准生产环境的运行应用监控
-与云计算的天然集成
3.Spring Boot 提供了哪些核心功能?
1、独立运行 Spring 项目
2、内嵌 Servlet 容器
Spring Boot 可以选择内嵌 Tomcat、Jetty 或者 Undertow,这样我们无须以 war 包形式部署项目。
3、提供 Starter 简化 Maven 配置
例如,当你使用了 spring-boot-starter-web ,会自动加入如下依赖:`spring-boot-starter-web` 的 pom 文件
4、自动配置 Spring Bean
Spring Boot 检测到特定类的存在,就会针对这个应用做一定的配置,进行自动配置 Bean ,这样会极大地减少我们要使用的配置。
5、准生产的应用监控
Spring Boot 提供基于 HTTP、JMX、SSH 对运行时的项目进行监控。
6、无代码生成和 XML 配置
Spring Boot 没有引入任何形式的代码生成,它是使用的 Spring 4.0 的条件 @Condition 注解以实现根据条件进行配置。同时使用了 Maven /Gradle 的依赖传递解析机制来实现 Spring 应用里面的自动配置。
4.如何重新加载Spring Boot上的更改,而无需重新启动服务器?
这可以使用DEV工具来实现。通过这种依赖关系,您可以节省任何更改,嵌入式tomcat将重新启动。
Spring Boot有一个开发工具(DevTools)模块,它有助于提高开发人员的生产力。Java开发人员面临的一个主要挑战是将文件更改自动部署到服务器并自动重启服务器。
开发人员可以重新加载Spring Boot上的更改,而无需重新启动服务器。这将消除每次手动部署更改的需要。Spring Boot在发布它的第一个版本时没有这个功能。
这是开发人员最需要的功能。DevTools模块完全满足开发人员的需求。该模块将在生产环境中被禁用。它还提供H2数据库控制台以更好地测试应用程序。
org.springframework.boot spring-boot-devtools true
5.运行 Spring Boot 有哪几种方式?
1、打包成 Fat Jar ,直接使用 java -jar 运行。目前主流的做法,推荐。
2、在 IDEA 或 Eclipse 中,直接运行应用的 Spring Boot 启动类的 #main(String[] args) 启动。适用于开发调试场景。
3、如果是 Web 项目,可以打包成 War 包,使用外部 Tomcat 或 Jetty 等容器。
6.Spring Boot中的监视器是什么?
Spring boot actuator是spring启动框架中的重要功能之一。Spring boot监视器可帮助您访问生产环境中正在运行的应用程序的当前状态。
有几个指标必须在生产环境中进行检查和监控。即使一些外部应用程序可能正在使用这些服务来向相关人员触发警报消息。监视器模块公开了一组可直接作为HTTP URL访问的REST端点来检查状态。
7.Spring Boot 常用的 Starter 有哪些?
spring-boot-starter-web :提供 Spring MVC + 内嵌的 Tomcat 。
spring-boot-starter-data-jpa :提供 Spring JPA + Hibernate 。
spring-boot-starter-data-redis :提供 Redis 。
mybatis-spring-boot-starter :提供 MyBatis 。
8.运行 Spring Boot 有哪几种方式?
1)打包用命令或者者放到容器中运行
2)用 Maven/ Gradle 插件运行
3)直接执行 main 方法运行
9.Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?
启动类上面的注解是@SpringBootApplication,它也是 Spring Boot 的核心注解,主要组合包含了以下 3 个注解:
@SpringBootConfiguration:组合了 @Configuration 注解,实现配置文件的功能。
@EnableAutoConfiguration:打开自动配置的功能,也可以关闭某个自动配置的选项,如关闭数据源自动配置功能:@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })。
@ComponentScan:Spring组件扫描
10.日志框架:
SpringBoot选用 SLF4j和logback;
如何让系统中所有的日志都统一到slf4j;
1、将系统中其他日志框架先排除出去;
2、用中间包来替换原有的日志框架;
3、我们导入slf4j其他的实现
SpringBoot能自动适配所有的日志,而且底层使用slf4j+logback的方式记录日志。
11.Spring Boot、Spring MVC 和 Spring 有什么区别
Spring 是一个“引擎”,
Spring MVC是基于Spring的一个 MVC 框架,
Spring Boot是基于 Spring的一套快速开发整合包
留言打卡48天+点在看+点底部小广告。
觉得本文对你有帮助?请分享给更多人
关注「全栈开发者社区」加星标,提升全栈技能
好文章,我在看❤️
以上是关于跳槽涨薪季面试题之spring boot框架的主要内容,如果未能解决你的问题,请参考以下文章
字节软测面试必问的Selenium自动化测试框架设计,你会了吗?
字节软测面试必问的Selenium自动化测试框架设计,你会了吗?