Java 后端面试题库 / 全部题解免费阅读理解原理,有条理地回答

Spring Boot

63 道题目
我的收藏与复习
题干与完整题解免费阅读第 1 / 7 页

答:Spring Framework 提供容器、依赖注入、事务等基础能力;Spring MVC 是其中基于 Servlet 的 Web 框架;Spring Boot 帮你组织依赖、启动、条件自动配置和运行管理。它们不是互相替代的三套语言。同一个应用可以用 Boot 启动、由 Spring 管对象,再由 MVC 接收 HTTP 请求。

专注学习

答:Starter 是围绕某种用途整理的一组依赖入口,帮你引入常见配套库;自动配置再依据类路径、已有 Bean 和属性决定怎样组装。它减少依赖选择的重复工作,却不保证业务开箱即用。Starter、版本管理 BOM、自动配置代码和构建插件各有职责,不能混成一个功能。

专注学习

答:常用入口是 SpringBootApplication,它组合配置类、自动配置和组件扫描语义。其他注解应按职责理解:Bean 提供对象,ConfigurationProperties 表达配置绑定,Profile 控制环境候选,RestController 声明 Web 入口,Transactional 声明事务规则。它们不都来自 Boot,也不都仅靠标记就生效。

专注学习

答:普通 Boot 的常见配置入口是 application.properties、application.yaml 或 application.yml;bootstrap 文件属于某些 Spring Cloud 引导机制的语境,不是所有 Boot 应用都必需的第二份核心配置。先看实际依赖与加载方式,再判断文件是否生效,不应只凭名字断言总是先加载且不能被覆盖。

专注学习

答:常用 properties 与 YAML,YAML 可用 .yaml 或 .yml 后缀。两者都能表达应用属性,区别主要在书写结构,不是 YAML 天然更快或更安全。项目应选清楚一致的入口;同一位置混放相同名称的不同格式时,还要了解优先级,避免以为两份值会按肉眼顺序合并。

专注学习

答:构建期可继承 starter-parent,或导入 dependencies BOM 管理版本;运行期则由 SpringApplication 等启动容器,并通过 SpringBootApplication 或 EnableAutoConfiguration 选择自动配置。只继承一个 Maven parent 不会自动启动程序,只有 main 方法也不保证依赖版本已经管理好。

专注学习

答:不必。选择合适 Web starter 后,应用可以带着嵌入式服务器运行,也可按要求打成 WAR 部署到兼容的外部 Servlet 容器。非 Web 应用甚至不需要 HTTP 容器。部署形式与业务代码分开选择,并检查当前 Boot 所要求的 Servlet 和 Java 版本。

专注学习

答:常见方式是 IDE 运行 main、Maven/Gradle 插件启动、打包后 java -jar、镜像运行,以及兼容场景下外部容器部署 WAR。它们最终都要加载应用与配置,只是启动和交付入口不同。开发方便与生产可复现应分别考虑,不能把本机启动成功当作部署验收。

专注学习

答:启动入口导入自动配置候选,再按类路径、已有对象、属性和应用类型等条件筛选,符合条件的配置向容器提供 Bean。用户显式配置常可使对应默认配置退让,但要看具体条件。自动配置不是替你猜业务,也不是扫描所有依赖类后全部实例化。

专注学习

答:通常按构建工具约定组织源码与资源:main/java 放应用代码,main/resources 放配置和资源,test 放测试;启动类位于合理根包,业务按职责或领域分包。Boot没有要求所有项目只能长成同一棵目录树,重要的是扫描、资源加载和依赖方向清楚。

专注学习
本页 10 道,共 63 道浏览其他领域