公司面试必问的41道 Spring Boot 面试题( 二 )


作为一个开发者 , 我不需要再担心这些依赖项和它们的兼容版本 。
8 Spring Boot 还提供了其它的哪些 Starter Project Options?
Spring Boot 也提供了其它的启动器项目包括 , 包括用于开发特定类型应用程序的典型依赖项 。

  • spring-boot-starter-web-services - SOAP Web Services;
  • spring-boot-starter-web - Web 和 RESTful 应用程序;
  • spring-boot-starter-test - 单元测试和集成测试;
  • spring-boot-starter-jdbc - 传统的 JDBC;
  • spring-boot-starter-hateoas - 为服务添加 HATEOAS 功能;
  • spring-boot-starter-security - 使用 SpringSecurity 进行身份验证和授权;
  • spring-boot-starter-data-jpa - 带有 Hibeernate 的 Spring Data JPA;
  • spring-boot-starter-data-rest - 使用 Spring Data REST 公布简单的 REST 服务;
9 创建一个 Spring Boot Project 的最简单的方法是什么?
Spring Initializr是启动 Spring Boot Projects 的一个很好的工具 。
公司面试必问的41道 Spring Boot 面试题文章插图
就像上图中所展示的一样 , 我们需要做一下几步:
1、登录 Spring Initializr , 按照以下方式进行选择:
2、选择 com.in28minutes.springboot 为组
3、选择 studet-services 为组件
4、选择下面的依赖项
Web
Actuator
DevTools
5、点击生 GenerateProject
6、将项目导入 Eclipse 。 文件 - 导入 - 现有的 maven 项目
10 Spring Initializr 是创建 Spring Boot Projects 的唯一方法吗?
不是的 。
Spring Initiatlizr 让创建 Spring Boot 项目变的很容易 , 但是 , 你也可以通过设置一个 maven 项目并添加正确的依赖项来开始一个项目 。
在我们的 Spring 课程中 , 我们使用两种方法来创建项目 。
第一种方法是 start.spring.io。
另外一种方法是在项目的标题为“Basic Web Application”处进行手动设置 。
手动设置一个 maven 项目
这里有几个重要的步骤:
1、在 Eclipse 中 , 使用文件 - 新建 Maven 项目来创建一个新项目
2、添加依赖项 。
3、添加 maven 插件 。
4、添加 Spring Boot 应用程序类 。
到这里 , 准备工作已经做好!
11 为什么我们需要 spring-boot-maven-plugin?
spring-boot-maven-plugin 提供了一些像 jar 一样打包或者运行应用程序的命令 。
1、spring-boot:run 运行你的 SpringBooty 应用程序 。
2、spring-boot:repackage 重新打包你的 jar 包或者是 war 包使其可执行
3、spring-boot:start 和 spring-boot:stop 管理 Spring Boot 应用程序的生命周期(也可以说是为了集成测试) 。
4、spring-boot:build-info 生成执行器可以使用的构造信息 。
12 如何使用 SpringBoot 自动重装我的应用程序?
使用 Spring Boot 开发工具 。
把 Spring Boot 开发工具添加进入你的项目是简单的 。
把下面的依赖项添加至你的 Spring Boot Project pom.xml 中
公司面试必问的41道 Spring Boot 面试题文章插图
重启应用程序 , 然后就可以了 。
同样的 , 如果你想自动装载页面 , 有可以看看 FiveReload
在我测试的时候 , 发现了 LiveReload 漏洞 , 如果你测试时也发现了 , 请一定要告诉我们 。
13 Spring Boot中的监视器是什么?
Spring boot actuator是spring启动框架中的重要功能之一 。 Spring boot监视器可帮助您访问生产环境中正在运行的应用程序的当前状态 。
有几个指标必须在生产环境中进行检查和监控 。 即使一些外部应用程序可能正在使用这些服务来向相关人员触发警报消息 。 监视器模块公开了一组可直接作为HTTP URL访问的REST端点来检查状态 。
14 什么是YAML?
YAML是一种人类可读的数据序列化语言 。 它通常用于配置文件 。
与属性文件相比 , 如果我们想要在配置文件中添加复杂的属性 , YAML文件就更加结构化 , 而且更少混淆 。 可以看出YAML具有分层配置数据 。
15 springboot自动配置的原理
在spring程序main方法中 添加@SpringBootApplication或者@EnableAutoConfiguration
会自动去maven中读取每个starter中的spring.factories文件 该文件里配置了所有需要被创建spring容器中的bean
16 springboot读取配置文件的方式
springboot默认读取配置文件为application.properties或者是application.yml
17 springboot集成mybatis的过程
添加mybatis的starter maven依赖
org.mybatis.spring.bootmybatis-spring-boot-starter1.3.2在mybatis的接口中 添加@Mapper注解
在application.yml配置数据源信息
18 什么是嵌入式服务器?我们为什么要使用嵌入式服务器呢?