怎样真正启用 Spring Boot 能力?
先说出你的答案
定义边界、关键机制、一个反例;P8题再补容量、失败与验证。
查看完整题解
参考回答
直接回答
构建期可继承 starter-parent,或导入 dependencies BOM 管理版本;运行期则由 SpringApplication 等启动容器,并通过 SpringBootApplication 或 EnableAutoConfiguration 选择自动配置。只继承一个 Maven parent 不会自动启动程序,只有 main 方法也不保证依赖版本已经管理好。
讲清原理
可以把它分成两件事:构建工具决定拿到哪些库与插件,启动代码决定怎样创建和配置应用。公司已有父 POM 时,可以导入 Boot BOM,再单独配置需要的构建插件,不必为了使用 Boot 放弃原有父工程。
自动配置是可选择的容器组装机制,具体 Web、数据库等能力还取决于依赖与条件。没有显式 Web 依赖的任务应用也可以使用 Boot,而不必为它增加一个服务器。
例子与易错点
教材把“继承 parent 或导入 BOM”直接写作开启全部特性不够准确。可以先用非 Web 小程序验证启动、配置与 runner,再根据需求加入数据访问或 Web 测试。
以下为 Java 21 类成员示例,放入同一外部类中使用,依赖 Boot4.1.2 / Framework7.0.10。最小非Web启动,不开启全局自动配置或扫描,不连接项目数据库。
@org.springframework.boot.SpringBootConfiguration
static class App {
@org.springframework.context.annotation.Bean
String message() { return "ready"; }
}
static String startOnce() {
var app=new org.springframework.boot.SpringApplication(App.class);
app.setWebApplicationType(org.springframework.boot.WebApplicationType.NONE);
app.setBannerMode(org.springframework.boot.Banner.Mode.OFF);
app.setLogStartupInfo(false);
try (var context=app.run(
"--spring.config.location=optional:classpath:/__boot16_empty__/",
"--spring.main.register-shutdown-hook=false")) {
return context.getBean("message",String.class);
}
}
相关题:第 1 题、第 9 题、第 17 题。
和评分标准对照,你能独立回答到哪一步?
自评会安排下一次复习,不保存你的口述内容。
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。