简介:
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
特点:
1. 创建独立的Spring应用程序
2. 嵌入的Tomcat,无需部署WAR文件
3. 简化Maven配置
4. 自动配置Spring
5. 提供生产就绪型功能,如指标,健康检查和外部配置
6. 绝对没有代码生成并且对XML也没有配置要求
高频面试题(截取部分):
- 问题一:什么是 Spring Boot?
- 问题二:Spring Boot 有哪些优点?
- 问题三:什么是 JavaConfig?
- 问题四:如何重新加载 Spring Boot 上的更改,而无需重新启动服务器?
- 问题五:Spring Boot 中的监视器是什么?
- 问题六:如何在 Spring Boot 中禁用 Actuator 端点安全性?
- 问题七:如何在自定义端口上运行 Spring Boot 应用程序?
- 问题八:什么是 YAML?
- 问题九:什么是 Spring Profiles?
- 问题十:什么是 Spring Batch?
- 问题十一:如何集成 Spring Boot 和 ActiveMQ?
- 问题十二:如何使用 Spring Boot 实现分页和排序?
- 问题十三:什么是 Swagger?你用 Spring Boot 实现了它吗?
- 问题十四:什么是 FreeMarker 模板?
- 问题十五:如何使用 Spring Boot 实现异常处理?
- 问题十六:您使用了哪些 starter maven 依赖项?
- 问题十七:什么是 CSRF 攻击?
- 问题十八:什么是 WebSockets?
- 问题十九:什么是 AOP?
- 问题二十:什么是 Apache Kafka?
- 问题二十一:我们如何监视所有 Spring Boot 微服务?
答案:
35常见SpringBoot知识点
- 问题一:Spring Boot、Spring MVC 和 Spring 有什么区别?
- 问题二:什么是自动配置?
- 问题三:什么是 Spring Boot Stater ?
- 问题四:你能否举一个例子来解释更多 Staters 的内容?
- 问题五:Spring Boot 还提供了其它的哪些 Starter Project Options?
- 问题六:Spring 是如何快速创建产品就绪应用程序的?
- 问题七:创建一个 Spring Boot Project 的最简单的方法是什么?
- 问题八:Spring Initializr 是创建 Spring Boot Projects 的唯一方法吗?
- 问题九:为什么我们需要 spring-boot-maven-plugin?
- 问题十:如何使用 SpringBoot 自动重装我的应用程序?
- 问题十一:什么是嵌入式服务器?我们为什么要使用嵌入式服务器呢?
- 问题十二:如何在 Spring Boot 中添加通用的 JS 代码?
- 问题十三:什么是 Spring Data?
- 问题十四:什么是 Spring Data REST?
- 问题十五:path=”users”, collectionResourceRel=”users” 如何与 Spring Data Rest 一起使用?
- 问题十六:当 Spring Boot 应用程序作为 Java 应用程序运行时,后台会发生什么?
- 问题十七:我们能否在 spring-boot-starter-web 中用 jetty 代替 tomcat?
- 问题十八:如何使用 Spring Boot 生成一个 WAR 文件?
- 问题十九:如何使用 Spring Boot 部署到不同的服务器?
- 问题二十:RequestMapping 和 GetMapping 的不同之处在哪里?
- 问题二十一:为什么我们不建议在实际的应用程序中使用 Spring Data Rest?
- 问题二十二: Spring Initializer 中,如何改变一个项目的包名字?
- 问题二十三:可以配置 application.propertierde 的完整的属性列表在哪里可以找到?
- 问题二十四:JPA 和 Hibernate 有哪些区别?
- 问题二十五:业务边界应该从哪一层开始?
- 问题二十六:使用 Spring Boot 启动连接到内存数据库 H2 的 JPA 应用程序需要哪些依赖项?
- 问题二十七:如何不通过任何配置来选择 Hibernate 作为 JPA 的默认实现?
- 问题二十八:指定的数据库连接信息在哪里?它是如何知道自动连接至 H2 的?
- 问题二十一九:我们如何连接一个像 MySQL 或者Orcale 一样的外部数据库?
- 问题三十:Spring Boot 配置的默认 H2 数据库的名字是上面?
- 问题三十一:为什么默认的数据库名字是 testdb?
- 问题三十二:如果 H2 不在类路径里面,会出现上面情况?
- 问题三十三:你能否举一个以 ReadOnly 为事务管理的例子?
- 问题三十四:配置文件的需求是什么?
- 问题三十五:如何使用配置文件通过 Spring Boot 配置特定环境的配置?
答案:
书籍强推:深入实践springboot
本书是Spring Boot领域的经典著作, 从技术、实践和原理3个维度对Spring Boot 进行了系统且深入的讲解。作者是Spring Boot领域的资深专家,有超过15年的IT行业 从业经验。
- 第一部分基础应用开发(技术维度)
- 第二部分分布式应用开发(实践维度)
(6〜9章),用生产环境中的 实际案例讲解了如何使用Spring Boot开发分 布式应用和云应用,以及如何用微服务构建 高可用的服务平台,实践性极强。
- 第三部分核心技术源代码分析(原理维度)
(10~12章),从源码层面着 重分析了Spring Boot的程序加载、自动配 置、数据管理、Spring Cloud的配置管理、 发现服务和负载均衡服务等核心功能的实现 原理,旨在帮助读者能更深刻地理解Spring Boot开发,掌握其精髓。
springboot总结文档
- Spring Boot 实战(1)初识Spring Boot
- Spring Boot 实战(2)引入模板引擎(Thymeleaf)
- Spring Boot 实战(3)静态资源配置
- Spring Boot 实战(4)springboot中的国际化
- Spring Boot 实战(5)解决 WebMvcConfigurationSupport 静态资源失效问题
- Spring Boot 实战(6)拦截器的使用
-
Spring Boot 实战(7)springboot 整合三大组件(Servlet、Filter、Listener)
-
Spring Boot 实战(8) springboot 整合 Mybatis
- Spring Boot 实战(9) springboot 整合 JPA
- Spring Boot 实战(10) 解决SpringBoot中 put 和 delete 提交不生效的问题
- Spring Boot 实战(11)整合MyBatis-Plus
- Spring Boot 实战(12)springboot 整合 swagger2
-
Spring Boot 实战(13)springboot 整合redis
-
【源码解读系列四】深入剖析Springboot启动原理的底层源码(14)