以下是Spring Boot面试题目,答案一个个整理出来很麻烦,所以直接答案可以查看这里即可:
http://www.yayihouse.com/yayishuwu/book/160
1、 | 什么是 Spring Boot? |
2、 | 为什么要用SpringBoot |
3、 | SpringBoot与SpringCloud 区别 |
4、 | Spring Boot 有哪些优点? |
5、 | Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的? |
6、 | Spring Boot 支持哪些日志框架?推荐和默认的日志框架是哪个? |
7、 | SpringBoot Starter的工作原理 |
8、 | Spring Boot 2.X 有什么新特性?与 1.X 有什么区别? |
9、 | SpringBoot支持什么前端模板, |
10、 | SpringBoot的缺点 |
11、 | 运行 Spring Boot 有哪几种方式? |
12、 | Spring Boot 需要独立的容器运行吗? |
13、 | 开启 Spring Boot 特性有哪几种方式? |
14、 | SpringBoot 实现热部署有哪几种方式? |
15、 | SpringBoot事务的使用 |
16、 | Async异步调用方法 |
17、 | 如何在 Spring Boot 启动的时候运行一些特定的代码? |
18、 | Spring Boot 有哪几种读取配置的方式? |
19、 | 什么是 JavaConfig? |
20、 | SpringBoot的自动配置原理是什么 |
21、 | 你如何理解 Spring Boot 配置加载顺序? |
22、 | 什么是 YAML? |
23、 | YAML 配置的优势在哪里 ? |
24、 | Spring Boot 是否可以使用 XML 配置 ? |
25、 | spring boot 核心配置文件是什么?bootstrap.properties 和application.properties 有何区别 ? |
26、 | 什么是 Spring Profiles? |
27、 | SpringBoot多数据源拆分的思路 |
28、 | SpringBoot多数据源事务如何管理 |
29、 | 保护 Spring Boot 应用有哪些方法? |
30、 | 如何实现 Spring Boot 应用程序的安全性? |
31、 | 比较一下 Spring Security 和 Shiro 各自的优缺点 ? |
32、 | Spring Boot 中如何解决跨域问题 ? |
33、 | Spring Boot 中的监视器是什么? |
34、 | 如何使用 Spring Boot 实现全局异常处理? |
35、 | 我们如何监视所有 Spring Boot 微服务? |
36、 | SpringBoot性能如何优化 |
37、 | 如何重新加载 Spring Boot 上的更改,而无需重新启动服务器?Spring Boot项目如何热部署? |
38、 | SpringBoot微服务中如何实现 session 共享 ? |
39、 | 您使用了哪些 starter maven 依赖项? |
40、 | Spring Boot 中的 starter 到底是什么 ? |
41、 | Spring Boot 中如何实现定时任务 ? |
42、 | spring-boot-starter-parent 有什么用 ? |
43、 | SpringBoot如何实现打包 |
44、 | Spring Boot 打成的 jar 和普通的 jar 有什么区别 ? |
Spring Boot 打成的 jar 和普通的 jar 有什么区别 ?
答案:
Spring Boot打成的JAR和普通的JAR在一些方面有一些区别。
1. 可执行性:Spring Boot打成的JAR是可执行的,可以直接通过`java -jar`命令来启动应用程序。它包含了嵌入的Servlet容器(如Tomcat或Undertow),以及应用程序的代码和依赖项。而普通的JAR通常只包含应用程序的代码和依赖项,需要在容器中运行。
2. 依赖项管理:Spring Boot的JAR打包方式使用了内嵌的依赖项管理机制,它会将项目中使用到的所有依赖项(包括Spring框架本身)打包进JAR中。这样一来,可以避免版本冲突和依赖项配置的繁琐问题。而普通的JAR需要手动配置所有的依赖项。
3. 约定优于配置:Spring Boot的JAR打包遵循了约定优于配置的原则,它自动配置了一些常见的功能,并提供了默认的配置选项。这样可以减少开发人员的工作量,快速构建可用的应用程序。而普通的JAR需要手动配置所有的功能和选项。
4. 打包方式:Spring Boot的JAR打包方式使用了特定的Maven插件(`spring-boot-maven-plugin`),它将应用程序及其依赖项打包成一个可执行的JAR文件。而普通的JAR打包方式没有特定的要求,只需使用标准的Maven或Gradle插件即可。
总之,Spring Boot的JAR打包方式提供了更便捷的应用程序部署和运行方式,它将应用程序及其依赖项打包为一个可执行的JAR文件。与普通的JAR相比,Spring Boot的JAR具有更高的可移植性和易用性,适合快速构建和部署独立的Spring Boot应用程序。