17.11.3. 从命令行运行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê641
17.11.4. 储存 Job Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê642
17.12. Actuator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê642
17.12.1. 改变Actuator端点的HTTP端口或地址 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê642
17.12.2. 自定义 ‘whitelabel’ 异常页面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê642
17.12.3. 对敏感数据进行脱敏 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê643
自定义脱敏 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê643
17.12.4. 将健康指标(Health Indicator)映射到 Micrometer Metric . . . . . . . . . . . Ê644
17.13. Security. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê645
17.13.1. 关闭 Spring Boot Security 配置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê645
17.13.2. 修改 UserDetailsService 和添加用户账户 . . . . . . . . . . . . . . . . . . . . . . . . . . Ê646
17.13.3. 运行在代理服务器后面时启用HTTPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê646
17.14. 热交换 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê647
17.14.1. 重新加载静态内容. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê647
17.14.2. 在不重启容器的情况下重新加载模板 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê648
Thymeleaf 模板 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê648
FreeMarker 模板 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê648
Groovy 模板. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê648
17.14.3. 快速重启应用程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê648
17.14.4. 在不重启容器的情况下重新加载Java类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê649
17.15. 测试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê649
17.15.1. 用Spring Security进行测试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê649
17.15.2. 使用Testcontainers进行集成测试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê650
17.15.3. 结构化 "@Configuration" 类,以纳入片段测试中 . . . . . . . . . . . . . . . . . . . . . Ê653
17.16. 构建 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê655
17.16.1. 生成构建信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê655
17.16.2. 生成Git信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê656
17.16.3. 自定义依赖版本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê657
17.16.4. 用Maven创建可执行的JAR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê657
17.16.5. 将Spring Boot应用作为依赖(Dependency)使用 . . . . . . . . . . . . . . . . . . . Ê658
17.16.6. 当一个可执行的Jar运行时提取特定的库. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê659
17.16.7. 用 Exclusions 创建一个不可执行的JAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê660
17.16.8. 用Maven开始远程调试Spring Boot应用程序 . . . . . . . . . . . . . . . . . . . . . . . . Ê660
17.16.9. 在不使用spring-boot-antlib的情况下从Ant构建可执行文件 . . . . . . . . . . . . . Ê660
17.17. 传统的部署方式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê661
17.17.1. 创建一个可部署的WAR文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê662
17.17.2. 将现有的应用程序转换为Spring Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê664
17.17.3. 将一个WAR部署到WebLogic上 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê669
附录 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê671
Appendix A: 常见的 Application Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê671
.A.1. Core Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê671
.A.2. Cache Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê681
.A.3. Mail Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê683
.A.4. JSON Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê684
.A.5. Data Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê687
.A.6. Transaction Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê714
.A.7. Data Migration Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ê717