# Spring Boot参考指南

## Spring Boot参考指南

- [Introduction](https://jack80342.gitbook.io/spring-boot/master.md)
- [I. Spring Boot文档](https://jack80342.gitbook.io/spring-boot/i.-spring-boot-documentation.md)
- [1. 关于本文档](https://jack80342.gitbook.io/spring-boot/i.-spring-boot-documentation/1.-about-the-documentation.md)
- [2. 获取帮助](https://jack80342.gitbook.io/spring-boot/i.-spring-boot-documentation/2.-getting-help.md)
- [3. 第一步](https://jack80342.gitbook.io/spring-boot/i.-spring-boot-documentation/3.-first-steps.md)
- [4. 使用Spring Boot](https://jack80342.gitbook.io/spring-boot/i.-spring-boot-documentation/4.-working-with-spring-boot.md)
- [5. 了解Spring Boot特性](https://jack80342.gitbook.io/spring-boot/i.-spring-boot-documentation/5.-learning-about-spring-boot-features.md)
- [6. 迁移到生产环境](https://jack80342.gitbook.io/spring-boot/i.-spring-boot-documentation/6.-moving-to-production.md)
- [7. 高级主题](https://jack80342.gitbook.io/spring-boot/i.-spring-boot-documentation/7.-advanced-topics.md)
- [II. 开始](https://jack80342.gitbook.io/spring-boot/ii.-getting-started.md)
- [8. Spring Boot介绍](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/8.-introducing-spring-boot.md)
- [9. 系统要求](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/9.-system-requirements.md)
- [9.1. Servlet容器](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/9.-system-requirements/9.1.-servlet-containers.md)
- [10. Spring Boot安装](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot.md)
- [10.1. 为Java开发者准备的安装指南](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.1.-installation-instructions-for-the-java-developer.md)
- [10.1.1. Maven安装](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.1.-installation-instructions-for-the-java-developer/10.1.1.-maven-installation.md)
- [10.1.2. Gradle安装](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.1.-installation-instructions-for-the-java-developer/10.1.2.-gradle-installation.md)
- [10.2. Spring Boot CLI安装](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.2.-installing-the-spring-boot-cli.md)
- [10.2.1. 手动安装](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.2.-installing-the-spring-boot-cli/10.2.1.-manual-installation.md)
- [10.2.2. 使用SDKMAN进行安装](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.2.-installing-the-spring-boot-cli/10.2.2.-installation-with-sdkman.md)
- [10.2.3. 使用OSX Homebrew进行安装](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.2.-installing-the-spring-boot-cli/10.2.3.-osx-homebrew-installation.md)
- [10.2.4. 使用MacPorts进行安装](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.2.-installing-the-spring-boot-cli/10.2.4.-macports-installation.md)
- [10.2.5. 命令行实现](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.2.-installing-the-spring-boot-cli/10.2.5.-command-line-completion.md)
- [10.2.6. Spring CLI示例快速入门](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.2.-installing-the-spring-boot-cli/10.2.6.-quick-start-spring-cli-example.md)
- [10.3. 从Spring Boot早期版本升级](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/10.-installing-spring-boot/10.3.-upgrading-from-an-earlier-version-of-spring-boot.md)
- [11. 开发你的第一个Spring Boot应用](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application.md)
- [11.1. 创建POM](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/11.1.-creating-the-pom.md)
- [11.2. 添加classpath依赖](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/11.2.-adding-classpath-dependencies.md)
- [11.3. 编写代码](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/11.3.-writing-the-code.md)
- [11.3.1. @RestController和@RequestMapping注解](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/11.3.-writing-the-code/11.3.1.-the-restcontroller-and-requestmapping-annotations.md)
- [11.3.2. @EnableAutoConfiguration注解](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/11.3.-writing-the-code/11.3.2.-the-enableautoconfiguration-annotation.md)
- [11.3.3. main方法](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/11.3.-writing-the-code/11.3.3.-the-main-method.md)
- [11.4. 运行示例](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/11.4.-running-the-example.md)
- [11.5. 创建一个可执行jar](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/11.5.-creating-an-executable-jar.md)
- [12. 接下来阅读什么](https://jack80342.gitbook.io/spring-boot/ii.-getting-started/11.-developing-your-first-spring-boot-application/12.-what-to-read-next.md)
- [III. 使用Spring Boot](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot.md)
- [13. 构建系统](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems.md)
- [13.1. 依赖管理](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems/13.1.-dependency-management.md)
- [13.2. Maven](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems/13.2.-maven.md)
- [13.2.1. 继承starter parent](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems/13.2.-maven/13.2.1.-inheriting-the-starter-parent.md)
- [13.2.2. 在不使用parent POM的情况下玩转Spring Boot](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems/13.2.-maven/13.2.2.-using-spring-boot-without-the-parent-pom.md)
- [13.2.3. 使用Spring Boot Maven插件](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems/13.2.-maven/13.2.3.-using-the-spring-boot-maven-plugin.md)
- [13.3. Gradle](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems/13.3.-gradle.md)
- [13.4. Ant](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems/13.4.-ant.md)
- [13.5. Starters](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/13.-build-systems/13.5.-starters.md)
- [14. 组织你的代码](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/14.-structuring-your-code.md)
- [14.1. 使用"default"包](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/14.-structuring-your-code/14.1.-using-the-default-package.md)
- [14.2. 放置应用的main类](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/14.-structuring-your-code/14.2.-locating-the-main-application-class.md)
- [15. 配置类](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/15.-configuration-classes.md)
- [15.1. 导入其他配置类](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/15.-configuration-classes/15.1.-importing-additional-configuration-classes.md)
- [15.2. 导入XML配置](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/15.-configuration-classes/15.2.-importing-xml-configuration.md)
- [16. 自动配置](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/16.-auto-configuration.md)
- [16.1. 逐步替换自动配置](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/16.-auto-configuration/16.1.-gradually-replacing-auto-configuration.md)
- [16.2. 禁用特定的自动配置类](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/16.-auto-configuration/16.2.-disabling-specific-auto-configuration-classes.md)
- [17. Spring Beans和依赖注入](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/17.-spring-beans-and-dependency-injection.md)
- [18. 使用@SpringBootApplication注解](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/18.-using-the-springbootapplication-annotation.md)
- [19. 运行应用程序](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/19.-running-your-application.md)
- [19.1. 从IDE中运行](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/19.-running-your-application/19.1.-running-from-an-ide.md)
- [19.2. 作为一个打包后的应用运行](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/19.-running-your-application/19.2.-running-as-a-packaged-application.md)
- [19.3. 使用Maven插件运行](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/19.-running-your-application/19.3.-using-the-maven-plugin.md)
- [19.4. 使用Gradle插件运行](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/19.-running-your-application/19.4.-using-the-gradle-plugin.md)
- [19.5. 热交换](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/19.-running-your-application/19.5.-hot-swapping.md)
- [20. 开发者工具](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools.md)
- [20.1. 默认属性](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.1.-property-defaults.md)
- [20.2. 自动重启](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.2.-automatic-restart.md)
- [20.2.1. 在状况评估里记录更改](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.2.-automatic-restart/20.2.1.-logging-changes-in-condition-evaluation.md)
- [20.2.2. 排除资源](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.2.-automatic-restart/20.2.2.-excluding-resources.md)
- [20.2.3. 查看其他路径](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.2.-automatic-restart/20.2.3.-watching-additional-paths.md)
- [20.2.4. 禁用重启](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.2.-automatic-restart/20.2.4.-disabling-restart.md)
- [20.2.5. 使用触发器文件](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.2.-automatic-restart/20.2.5.-using-a-trigger-file.md)
- [20.2.6. 自定义restart类加载器](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.2.-automatic-restart/20.2.6.-customizing-the-restart-classloader.md)
- [20.2.7. 已知限制](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.2.-automatic-restart/20.2.7.-known-limitations.md)
- [20.3. LiveReload](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.3.-livereload.md)
- [20.4. 全局设置](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.4.-global-settings.md)
- [20.5. 远程应用](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.5.-remote-applications.md)
- [20.5.1. 运行远程客户端应用](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.5.-remote-applications/20.5.1.-running-the-remote-client-application.md)
- [20.5.2. 远程更新](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/20.-developer-tools/20.5.-remote-applications/20.5.2.-remote-update.md)
- [21. 打包用于生产的应用](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/21.-packaging-your-application-for-production.md)
- [22. 接下来阅读什么](https://jack80342.gitbook.io/spring-boot/iii.-using-spring-boot/22.-what-to-read-next.md)
- [IV. Spring Boot特性](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features.md)
- [23. SpringApplication](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication.md)
- [23.1. 启动失败](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.1.-startup-failure.md)
- [23.2. 自定义Banner](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.2.-customizing-the-banner.md)
- [23.3. 自定义SpringApplication](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.3.-customizing-springapplication.md)
- [23.4. 流式构建API](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.4.-fluent-builder-api.md)
- [23.5. 应用事件和监听器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.5.-application-events-and-listeners.md)
- [23.6. Web环境](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.6.-web-environment.md)
- [23.7. 访问应用参数](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.7.-accessing-application-arguments.md)
- [23.8. 使用ApplicationRunner或CommandLineRunner](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.8.-using-the-applicationrunner-or-commandlinerunner.md)
- [23.9. 应用退出](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.9.-application-exit.md)
- [23.10. Admin特性](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/23.-springapplication/23.10.-admin-features.md)
- [24.外化配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration.md)
- [24.1. 配置随机值](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.1.-configuring-random-values.md)
- [24.2. 访问命令行属性](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.2.-accessing-command-line-properties.md)
- [24.3. 应用属性文件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.3.-application-property-files.md)
- [24.4. Profile-specific属性](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.4.-profile-specific-properties.md)
- [24.5. 属性占位符](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.5.-placeholders-in-properties.md)
- [24.6. 使用YAML代替Properties](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.6.-using-yaml-instead-of-properties.md)
- [24.6.1. 加载YAML](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.6.-using-yaml-instead-of-properties/24.6.1.-loading-yaml.md)
- [24.6.2. 在Spring环境中使用YAML暴露属性](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.6.-using-yaml-instead-of-properties/24.6.2.-exposing-yaml-as-properties-in-the-spring-environment.md)
- [24.6.3. Multi-profile YAML文档](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.6.-using-yaml-instead-of-properties/24.6.3.-multi-profile-yaml-documents.md)
- [24.6.4. YAML缺点](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.6.-using-yaml-instead-of-properties/24.6.4.-yaml-shortcomings.md)
- [24.6.5. 合并YAML列表](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.6.-using-yaml-instead-of-properties/24.6.5.-merging-yaml-lists.md)
- [24.7. 类型安全的配置属性](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.7.-type-safe-configuration-properties.md)
- [24.7.1. 第三方配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.7.-type-safe-configuration-properties/24.7.1.-third-party-configuration.md)
- [24.7.2. Relaxed绑定](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.7.-type-safe-configuration-properties/24.7.2.-relaxed-binding.md)
- [24.7.3. 属性转换](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.7.-type-safe-configuration-properties/24.7.3.-properties-conversion.md)
- [24.7.4. @ConfigurationProperties校验](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.7.-type-safe-configuration-properties/24.7.4.-configurationproperties-validation.md)
- [24.7.5. @ConfigurationProperties vs @Value](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/24.-externalized-configuration/24.7.-type-safe-configuration-properties/24.7.5.-configurationproperties-vs.-value.md)
- [25. Profiles](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/25.-profiles.md)
- [25.1. 添加激活的profiles](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/25.-profiles/25.1.-adding-active-profiles.md)
- [25.2.以编程方式设置profiles](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/25.-profiles/25.2.-programmatically-setting-profiles.md)
- [25.3. Profile-specific配置文件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/25.-profiles/25.3.-profile-specific-configuration-files.md)
- [26. 日志](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging.md)
- [26.1. 日志格式](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.1.-log-format.md)
- [26.2. 控制台输出](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.2.-console-output.md)
- [26.2.1. Color-coded输出](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.2.-console-output/26.2.1.-color-coded-output.md)
- [26.3. 文件输出](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.3.-file-output.md)
- [26.4. 日志级别](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.4.-log-levels.md)
- [26.5. 自定义日志配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.5.-custom-log-configuration.md)
- [26.6. Logback扩展](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.6.-logback-extensions.md)
- [26.6.1. Profile-specific配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.6.-logback-extensions/26.6.1.-profile-specific-configuration.md)
- [26.6.2. Environment属性](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/26.-logging/26.6.-logback-extensions/26.6.2.-environment-properties.md)
- [27. 开发Web应用](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications.md)
- [27.1. Spring Web MVC框架](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework.md)
- [27.1.1. Spring MVC自动配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.1.-spring-mvc-auto-configuration.md)
- [27.1.2. HttpMessageConverters](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.2.-httpmessageconverters.md)
- [27.1.3. 自定义JSON序列化器和反序列化器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.3.-custom-json-serializers-and-deserializers.md)
- [27.1.4. MessageCodesResolver](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.4.-messagecodesresolver.md)
- [27.1.5. 静态内容](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.5.-static-content.md)
- [27.1.6. 欢迎页](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.6.-welcome-page.md)
- [27.1.7. 定制网站图标](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.7.-custom-favicon.md)
- [27.1.8. 路径匹配与内容协商](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.8.-path-matching-and-content-negotiation.md)
- [27.1.9. ConfigurableWebBindingInitializer](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.9.-configurablewebbindinginitializer.md)
- [27.1.10. 模板引擎](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.10.-template-engines.md)
- [27.1.11. 错误处理](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.11.-error-handling.md)
- [27.1.12. Spring HATEOAS](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.12.-spring-hateoas.md)
- [27.1.13. CORS支持](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.1.-the-spring-web-mvc-framework/27.1.13.-cors-support.md)
- [27.2 Spring WebFlux框架](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.2-the-spring-webflux-framework.md)
- [27.2.1 Spring WebFlux自动配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.2-the-spring-webflux-framework/27.2.1-spring-webflux-auto-configuration.md)
- [27.2.2 HTTP编解码器——HttpMessageReaders与HttpMessageWriters](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.2-the-spring-webflux-framework/27.2.2-http-codecs-with-httpmessagereaders-and-httpmessagewriters.md)
- [27.2.3 静态内容](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.2-the-spring-webflux-framework/27.2.3-static-content.md)
- [27.2.4 模板引擎](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.2-the-spring-webflux-framework/27.2.4-template-engines.md)
- [27.2.5 错误处理](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.2-the-spring-webflux-framework/27.2.5-error-handling.md)
- [27.2.6 网络过滤器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.2-the-spring-webflux-framework/27.2.6-web-filters.md)
- [27.3. JAX-RS和Jersey](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.3.-jax-rs-and-jersey.md)
- [27.4 内嵌servlet容器支持](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.4-embedded-servlet-container-support.md)
- [27.4.1 Servlets、Filters和listeners](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.4-embedded-servlet-container-support/27.4.1-servlets-filters-and-listeners.md)
- [27.4.2 Servlet上下文初始化](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.4-embedded-servlet-container-support/27.4.2-servlet-context-initialization.md)
- [27.4.3 ServletWebServerApplicationContext](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.4-embedded-servlet-container-support/27.4.3-the-servletwebserverapplicationcontext.md)
- [27.4.4 自定义内嵌servlet容器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.4-embedded-servlet-container-support/27.4.4-customizing-embedded-servlet-containers.md)
- [27.4.5 JSP的限制](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/27.-developing-web-applications/27.4-embedded-servlet-container-support/27.4.5-jsp-limitations.md)
- [28. 安全](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/28.-security.md)
- [28.1 MVC安全](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/28.-security/28.1-mvc-security.md)
- [28.2 WebFlux安全](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/28.-security/28.2-webflux-security.md)
- [28.3 OAuth2](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/28.-security/28.3-oauth2.md)
- [28.3.1 客户端](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/28.-security/28.3-oauth2/28.3.1-client.md)
- [28.4 执行器安全](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/28.-security/28.4-actuator-security.md)
- [28.4.1 跨站请求伪造保护](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/28.-security/28.4-actuator-security/28.4.1-cross-site-request-forgery-protection.md)
- [29. 使用SQL数据库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases.md)
- [29.1. 配置数据源](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.1.-configure-a-datasource.md)
- [29.1.1. 对内嵌数据库的支持](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.1.-configure-a-datasource/29.1.1.-embedded-database-support.md)
- [29.1.2. 连接生产环境数据库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.1.-configure-a-datasource/29.1.2.-connection-to-a-production-database.md)
- [29.1.3. 连接JNDI数据库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.1.-configure-a-datasource/29.1.3.-connection-to-a-jndi-datasource.md)
- [29.2. 使用JdbcTemplate](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.2.-using-jdbctemplate.md)
- [29.3. JPA和Spring Data](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.3.-jpa-and-spring-data.md)
- [29.3.1. 实体类](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.3.-jpa-and-spring-data/29.3.1.-entity-classes.md)
- [29.3.2. Spring Data JPA仓库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.3.-jpa-and-spring-data/29.3.2.-spring-data-jpa-repositories.md)
- [29.3.3. 创建和删除JPA数据库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.3.-jpa-and-spring-data/29.3.3.-creating-and-dropping-jpa-databases.md)
- [29.3.4. 在视图中打开实体管理器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.3.-jpa-and-spring-data/29.3.4.-open-entitymanager-in-view.md)
- [29.4 使用H2的web控制台](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.4-using-h2s-web-console.md)
- [29.4.1 改变H2控制台路径](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.4-using-h2s-web-console/29.4.1-changing-the-h2-consoles-path.md)
- [29.5 使用jOOQ](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.5-using-jooq.md)
- [29.5.1 代码生成](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.5-using-jooq/29.5.1-code-generation.md)
- [29.5.2 使用DSLContext](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.5-using-jooq/29.5.2-using-dslcontext.md)
- [29.5.3 jOOQ SQL方言](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.5-using-jooq/29.5.3-jooq-sql-dialect.md)
- [29.5.4 自定义jOOQ](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/29.-working-with-sql-databases/29.5-using-jooq/29.5.4-customizing-jooq.md)
- [30. 使用NoSQL技术](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies.md)
- [30.1. Redis](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.1.-redis.md)
- [30.1.1. 连接Redis](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.1.-redis/30.1.1.-connecting-to-redis.md)
- [30.2. MongoDB](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.2.-mongodb.md)
- [30.2.1. 连接MongoDB数据库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.2.-mongodb/30.2.1.-connecting-to-a-mongodb-database.md)
- [30.2.2. MongoDBTemplate](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.2.-mongodb/30.2.2.-mongotemplate.md)
- [30.2.3. Spring Data MongoDB仓库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.2.-mongodb/30.2.3.-spring-data-mongodb-repositories.md)
- [30.2.4 内嵌的Mongo](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.2.-mongodb/30.2.4-embedded-mongo.md)
- [30.3 Neo4j](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.3-neo4j.md)
- [30.3.1 连接Neo4j数据库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.3-neo4j/30.3.1-connecting-to-a-neo4j-database.md)
- [30.3.2 使用内嵌模式](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.3-neo4j/30.3.2-using-the-embedded-mode.md)
- [30.3.3 Neo4jSession](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.3-neo4j/30.3.3-neo4jsession.md)
- [30.3.4 Spring Data Neo4j仓库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.3-neo4j/30.3.4-spring-data-neo4j-repositories.md)
- [30.3.5 仓库示例](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.3-neo4j/30.3.5-repository-example.md)
- [30.4 Gemfire](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.4-gemfire.md)
- [30.5 Solr](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.5-solr.md)
- [30.5.1 连接Solr](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.5-solr/30.5.1-connecting-to-solr.md)
- [30.5.2 Spring Data Solr仓库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.5-solr/30.5.2-spring-data-solr-repositories.md)
- [30.6 Elasticsearch](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.6-elasticsearch.md)
- [30.6.1 使用Jest连接Elasticsearch](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.6-elasticsearch/30.6.1-connecting-to-elasticsearch-by-using-jest.md)
- [30.6.2 使用Spring Data连接Elasticsearch](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.6-elasticsearch/30.6.2-connecting-to-elasticsearch-by-using-spring-data.md)
- [30.6.3 Spring Data Elasticseach仓库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.6-elasticsearch/30.6.3-spring-data-elasticsearch-repositories.md)
- [30.7 Cassandra](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.7-cassandra.md)
- [30.7.1 连接Cassandra](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.7-cassandra/30.7.1-connecting-to-cassandra.md)
- [30.7.2 Spring Data Cassandra仓库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.7-cassandra/30.7.2-spring-data-cassandra-repositories.md)
- [30.8 Couchbase](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.8-couchbase.md)
- [30.8.1 连接Couchbase](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.8-couchbase/30.8.1-connecting-to-couchbase.md)
- [30.8.2 Spring Data Couchbase仓库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.8-couchbase/30.8.2-spring-data-couchbase-repositories.md)
- [30.9 LDAP](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.9-ldap.md)
- [30.9.1 连接LDAP服务器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.9-ldap/30.9.1-connecting-to-an-ldap-server.md)
- [30.9.2 Spring Data LDAP仓库](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.9-ldap/30.9.2-spring-data-ldap-repositories.md)
- [30.9.3 嵌入式内存中LDAP服务器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.9-ldap/30.9.3-embedded-in-memory-ldap-server.md)
- [30.10 InfluxDB](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.10-influxdb.md)
- [30.10.1 连接InfluxDB](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/30.-working-with-nosql-technologies/30.10-influxdb/30.10.1-connecting-to-influxdb.md)
- [31. 缓存](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching.md)
- [31.1 支持的缓存提供商](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers.md)
- [31.1.1 Generic](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.1-generic.md)
- [31.1.2 JCache (JSR-107)](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.2-jcache-jsr-107.md)
- [31.1.3 EhCache 2.x](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.3-ehcache-2.x.md)
- [31.1.4 Hazelcast](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.4-hazelcast.md)
- [31.1.5 Infinispan](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.5-infinispan.md)
- [31.1.6 Couchbase](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.6-couchbase.md)
- [31.1.7 Redis](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.7-redis.md)
- [31.1.8 Caffeine](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.8-caffeine.md)
- [31.1.9 Simple](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.9-simple.md)
- [31.1.10 None](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/31.-caching/31.1-supported-cache-providers/31.1.10-none.md)
- [32. 消息](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging.md)
- [32.1. JMS](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.1.-jms.md)
- [32.1.1 ActiveQ支持](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.1.-jms/32.1.1-activemq-support.md)
- [32.1.2 Artemis支持](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.1.-jms/32.1.2-artemis-support.md)
- [32.1.3 使用JNDI ConnectionFactory](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.1.-jms/32.1.3-using-a-jndi-connectionfactory.md)
- [32.1.4 发送消息](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.1.-jms/32.1.4-sending-a-message.md)
- [32.1.5 接收消息](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.1.-jms/32.1.5-receiving-a-message.md)
- [32.2 AMQP](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.2-amqp.md)
- [32.2.1 RabbitMQ支持](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.2-amqp/32.2.1-rabbitmq-support.md)
- [32.2.2 发送消息](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.2-amqp/32.2.2-sending-a-message.md)
- [32.2.3 接收消息](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.2-amqp/32.2.3-receiving-a-message.md)
- [32.3 Apache Kafka支持](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.3-apache-kafka-support.md)
- [32.3.1 发送消息](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.3-apache-kafka-support/32.3.1-sending-a-message.md)
- [32.3.2 接收消息](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.3-apache-kafka-support/32.3.2-receiving-a-message.md)
- [32.3.3 其它的Kafka属性](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/32.-messaging/32.3-apache-kafka-support/32.3.3-additional-kafka-properties.md)
- [33. 使用RestTemplate调用REST服务](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/33.-calling-rest-services-with-resttemplate.md)
- [33.1 自定义RestTemplate](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/33.-calling-rest-services-with-resttemplate/33.1-resttemplate-customization.md)
- [34. 使用WebClient调用REST服务](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/34.-calling-rest-services-with-webclient.md)
- [34.1 自定义WebClient](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/34.-calling-rest-services-with-webclient/34.1-webclient-customization.md)
- [35. 验证](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/35.-validation.md)
- [36. 发送邮件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/36.-sending-email.md)
- [37. 使用JTA处理分布式事务](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/37.-distributed-transactions-with-jta.md)
- [37.1 使用Atomikos事务管理器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/37.-distributed-transactions-with-jta/37.1-using-an-atomikos-transaction-manager.md)
- [37.2 使用Bitronix事务管理器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/37.-distributed-transactions-with-jta/37.2-using-a-bitronix-transaction-manager.md)
- [37.3 使用Narayana事务管理器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/37.-distributed-transactions-with-jta/37.3-using-a-narayana-transaction-manager.md)
- [37.4 使用J2EE管理的事务管理器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/37.-distributed-transactions-with-jta/37.4-using-a-java-ee-managed-transaction-manager.md)
- [37.5 混合XA和non-XA的JMS连接](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/37.-distributed-transactions-with-jta/37.5-mixing-xa-and-non-xa-jms-connections.md)
- [37.6 支持可替代的内嵌事务管理器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/37.-distributed-transactions-with-jta/37.6-supporting-an-alternative-embedded-transaction-manager.md)
- [38. Hazelcast](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/38.-hazelcast.md)
- [39. Quartz调度器](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/39.-quartz-scheduler.md)
- [40. Spring集成](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/40.-spring-integration.md)
- [41. Spring Session](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/41.-spring-session.md)
- [42. 基于JMX的监控和管理](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/42.-monitoring-and-management-over-jmx.md)
- [43. 测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing.md)
- [43.1 测试作用域依赖](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.1-test-scope-dependencies.md)
- [43.2 测试Spring应用](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.2-testing-spring-applications.md)
- [43.3 测试Spring Boot应用](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications.md)
- [43.3.1 检测网络应用类型](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.1-detecting-web-application-type.md)
- [43.3.2 检测测试配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.2-detecting-test-configuration.md)
- [43.3.3 排除测试配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.3-excluding-test-configuration.md)
- [43.3.4 使用运行的服务器测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.4-testing-with-a-running-server.md)
- [43.3.5 模拟和监视bean](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.5-mocking-and-spying-beans.md)
- [43.3.6 自动配置测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.6-auto-configured-tests.md)
- [43.3.7 自动配置的JSON测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.7-auto-configured-json-tests.md)
- [43.3.8 自动配置的Spring MVC测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.8-auto-configured-spring-mvc-tests.md)
- [43.3.9 自动配置的Spring WebFlux测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.9-auto-configured-spring-webflux-tests.md)
- [43.3.10 自动配置的Data JPA测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.10-auto-configured-data-jpa-tests.md)
- [43.3.11 自动配置的JDBC测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.11-auto-configured-jdbc-tests.md)
- [43.3.12 自动配置的jOOQ测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.12-auto-configured-jooq-tests.md)
- [43.3.13 自动配置的Data MongoDB测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.13-auto-configured-data-mongodb-tests.md)
- [43.3.14 自动配置的Data Neo4j测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.14-auto-configured-data-neo4j-tests.md)
- [43.3.15 自动配置的Data Redis测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.15-auto-configured-data-redis-tests.md)
- [43.3.16 自动配置的Data LDAP测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.16-auto-configured-data-ldap-tests.md)
- [43.3.17 自动配置的REST客户端](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.17-auto-configured-rest-clients.md)
- [43.3.18 自动配置的Spring REST Docs测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.18-auto-configured-spring-rest-docs-tests.md)
- [43.3.19 用户配置与切片](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.19-user-configuration-and-slicing.md)
- [43.3.20 使用Spock测试Spring Boot应用](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.3-testing-spring-boot-applications/43.3.20-using-spock-to-test-spring-boot-applications.md)
- [43.4 测试工具类](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.4-test-utilities.md)
- [43.4.1 ConfigFileApplicationContextInitializer](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.4-test-utilities/43.4.1-configfileapplicationcontextinitializer.md)
- [43.4.2 EnvironmentTestUtils](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.4-test-utilities/43.4.2-environmenttestutils.md)
- [43.4.3 OutputCapture](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.4-test-utilities/43.4.3-outputcapture.md)
- [43.4.4 TestRestTemplate](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/43.-testing/43.4-test-utilities/43.4.4-testresttemplate.md)
- [44. WebSockets](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/44.-websockets.md)
- [45. Web Services](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/45.-web-services.md)
- [46. 创建自己的自动配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration.md)
- [46.1 理解自动配置的bean](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.1-understanding-auto-configured-beans.md)
- [46.2 定位自动配置候选者](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.2-locating-auto-configuration-candidates.md)
- [46.3 条件注解](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.3-condition-annotations.md)
- [46.3.1 Class条件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.3-condition-annotations/46.3.1-class-conditions.md)
- [46.3.2 Bean条件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.3-condition-annotations/46.3.2-bean-conditions.md)
- [46.3.3 Property条件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.3-condition-annotations/46.3.3-property-conditions.md)
- [46.3.4 Resource条件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.3-condition-annotations/46.3.4-resource-conditions.md)
- [46.3.5 Web Application条件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.3-condition-annotations/46.3.5-web-application-conditions.md)
- [46.3.6 SpEL表达式条件](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.3-condition-annotations/46.3.6-spel-expression-conditions.md)
- [46.4 测试你的自动配置](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.4-testing-your-auto-configuration.md)
- [46.4.1 模拟网络上下文](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.4-testing-your-auto-configuration/46.4.1-simulating-a-web-context.md)
- [46.4.2 覆盖类路径](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.4-testing-your-auto-configuration/46.4.2-overriding-the-classpath.md)
- [46.5 创建自己的starter](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.5-creating-your-own-starter.md)
- [46.5.1 命名](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.5-creating-your-own-starter/46.5.1-naming.md)
- [46.5.2 自动配置模块](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.5-creating-your-own-starter/46.5.2-autoconfigure-module.md)
- [46.5.3 Starter模块](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/46.-creating-your-own-auto-configuration/46.5-creating-your-own-starter/46.5.3-starter-module.md)
- [47. Kotlin支持](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support.md)
- [47.1 要求](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.1-requirements.md)
- [47.2 空安全](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.2-null-safety.md)
- [47.3 Kotlin API](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.3-kotlin-api.md)
- [47.3.1 runApplication](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.3-kotlin-api/47.3.1-runapplication.md)
- [47.3.2 扩展](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.3-kotlin-api/47.3.2-extensions.md)
- [47.4 依赖管理](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.4-dependency-management.md)
- [47.5 @ConfigurationProperties](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.5-configurationproperties.md)
- [47.6 测试](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.6-testing.md)
- [47.7 资源](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.7-zi-yuan.md)
- [47.7.1 延伸阅读](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.7-zi-yuan/47.7.1-further-reading.md)
- [47.7.2 示例](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/47.-kotlin-support/47.7-zi-yuan/47.7.2-examples.md)
- [48. 接下来阅读什么](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/48.-what-to-read-next.md)
- [V. Spring Boot执行器：用于生产环境的特性](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator.md)
- [49. 开启用于生产环境的特性](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/49.-enabling-production-ready-features.md)
- [50. 端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints.md)
- [50.1 启用端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.1-enabling-endpoints.md)
- [50.2 暴露端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.2-exposing-endpoints.md)
- [50.3 加密HTTP端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.3-securing-http-endpoints.md)
- [50.4 配置端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.4-configuring-endpoints.md)
- [50.5 执行器网络端点的超媒体支持](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.5-hypermedia-for-actuator-web-endpoints.md)
- [50.6 执行器网络端点路径](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.6-actuator-web-endpoint-paths.md)
- [50.7 CORS支持](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.7-cors-support.md)
- [50.8 实现自定义端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.8-implementing-custom-endpoints.md)
- [50.8.1 接收输入](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.8-implementing-custom-endpoints/50.8.1-receiving-input.md)
- [50.8.2 自定义网络端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.8-implementing-custom-endpoints/50.8.2-custom-web-endpoints.md)
- [50.8.3 Servlet端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.8-implementing-custom-endpoints/50.8.3-servlet-endpoints.md)
- [50.8.4 Controller端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.8-implementing-custom-endpoints/50.8.4-controller-endpoints.md)
- [50.9 健康信息](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.9-health-information.md)
- [50.9.1 自动配置的HealthIndicator](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.9-health-information/50.9.1-auto-configured-healthindicators.md)
- [50.9.2 编写自定义HealthIndicator](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.9-health-information/50.9.2-writing-custom-healthindicators.md)
- [50.9.3 响应式的健康指示器](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.9-health-information/50.9.3-reactive-health-indicators.md)
- [50.9.4 自动配置的ReactiveHealthIndicators](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.9-health-information/50.9.4-auto-configured-reactivehealthindicators.md)
- [50.10 应用信息](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.10-application-information.md)
- [50.10.1 自动配置的InfoContributors](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.10-application-information/50.10.1-auto-configured-infocontributors.md)
- [50.10.2 自定义应用信息](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.10-application-information/50.10.2-custom-application-information.md)
- [50.10.3 Git提交信息](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.10-application-information/50.10.3-git-commit-information.md)
- [50.10.4 构建信息](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.10-application-information/50.10.4-build-information.md)
- [50.10.5 编写自定义的InfoContributor](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/50.-endpoints/50.10-application-information/50.10.5-writing-custom-infocontributors.md)
- [51. 基于HTTP的监控和管理](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/51.-monitoring-and-management-over-http.md)
- [51.1 自定义管理端点路径](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/51.-monitoring-and-management-over-http/51.1-customizing-the-management-endpoint-paths.md)
- [51.2 自定义管理服务器端口](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/51.-monitoring-and-management-over-http/51.2-customizing-the-management-server-port.md)
- [51.3 配置管理相关的SSL](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/51.-monitoring-and-management-over-http/51.3-configuring-management-specific-ssl.md)
- [51.4 自定义管理服务器地址](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/51.-monitoring-and-management-over-http/51.4-customizing-the-management-server-address.md)
- [51.5 禁用HTTP端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/51.-monitoring-and-management-over-http/51.5-disabling-http-endpoints.md)
- [52. 基于JMX的监控和管理](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/52.-monitoring-and-management-over-jmx.md)
- [52.1 自定义MBean名称](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/52.-monitoring-and-management-over-jmx/52.1-customizing-mbean-names.md)
- [52.2 禁用JMX端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/52.-monitoring-and-management-over-jmx/52.2-disabling-jmx-endpoints.md)
- [52.3 使用Jolokia通过HTTP实现JMX远程管理](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/52.-monitoring-and-management-over-jmx/52.3-using-jolokia-for-jmx-over-http.md)
- [52.3.1 自定义Jolokia](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/52.-monitoring-and-management-over-jmx/52.3-using-jolokia-for-jmx-over-http/52.3.1-customizing-jolokia.md)
- [52.3.2 禁用Jolokia](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/52.-monitoring-and-management-over-jmx/52.3-using-jolokia-for-jmx-over-http/52.3.2-disabling-jolokia.md)
- [53. 记录器](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/53.-loggers.md)
- [53.1 配置记录器](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/53.-loggers/53.1-configure-a-logger.md)
- [54. 度量指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics.md)
- [54.1 入门指南](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.1-getting-started.md)
- [54.2 支持的监控系统](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong.md)
- [54.2.1 Atlas](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.1-atlas.md)
- [54.2.2 Datadog](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.2-datadog.md)
- [54.2.3 Ganglia](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.3-ganglia.md)
- [54.2.4 Graphite](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.4-graphite.md)
- [54.2.5 Influx](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.5-influx.md)
- [54.2.6 JMX](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.6-jmx.md)
- [54.2.7 New Relic](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.7-new-relic.md)
- [54.2.8 Prometheus](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.8-prometheus.md)
- [54.2.9 SignalFx](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.9-signalfx.md)
- [54.2.10 Simple](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.10-simple.md)
- [54.2.11 StatsD](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.11-statsd.md)
- [54.2.12 Wavefront](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.2-zhi-chi-de-jian-kong-xi-tong/54.2.12-wavefront.md)
- [54.3 支持的指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.3-supported-metrics.md)
- [54.3.1 Spring MVC指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.3-supported-metrics/54.3.1-spring-mvc-metrics.md)
- [54.3.2 Spring WebFlux指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.3-supported-metrics/54.3.2-spring-webflux-metrics.md)
- [54.3.3 RestTemplate指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.3-supported-metrics/54.3.3-resttemplate-metrics.md)
- [54.3.4 Spring集成指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.3-supported-metrics/54.3.4-spring-integration-metrics.md)
- [54.3.5 缓存指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.3-supported-metrics/54.3.5-cache-metrics.md)
- [54.3.6 数据源指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.3-supported-metrics/54.3.6-datasource-metrics.md)
- [54.3.7 RabbitMQ指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.3-supported-metrics/54.3.7-rabbitmq-metrics.md)
- [54.4 注册自定义指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.4-registering-custom-metrics.md)
- [54.5 自定义单个指标](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.5-customizing-individual-metrics.md)
- [54.5.1 Per-meter属性](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.5-customizing-individual-metrics/54.5.1-per-meter-properties.md)
- [54.6 度量端点](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/54.-metrics/54.6-metrics-endpoint.md)
- [55. 审计](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/55.-auditing.md)
- [56. HTTP追踪](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/56.-http-tracing.md)
- [56.1 自定义HTTP追踪](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/56.-http-tracing/56.1-custom-http-tracing.md)
- [57. 进程监控](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/57.-process-monitoring.md)
- [57.1 扩展配置](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/57.-process-monitoring/57.1-extend-configuration.md)
- [57.2 以编程方式](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/57.-process-monitoring/57.2-programmatically.md)
- [58. Cloud Foundry支持](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/58.-cloud-foundry-support.md)
- [58.1 禁用扩展的Cloud Foundry执行器支持](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/58.-cloud-foundry-support/58.1-disabling-extended-cloud-foundry-actuator-support.md)
- [58.2 Cloud Foundry自签名证书](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/58.-cloud-foundry-support/58.2-cloud-foundry-self-signed-certificates.md)
- [58.3 自定义上下文路径](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/58.-cloud-foundry-support/58.3-custom-context-path.md)
- [59. 接下来阅读什么](https://jack80342.gitbook.io/spring-boot/v.-spring-boot-actuator/59.-what-to-read-next.md)
- [VI. 部署到云端](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications.md)
- [60. 部署到云端](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud.md)
- [60.1 Cloud Foundry](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.1-cloud-foundry.md)
- [60.1.1 绑定服务](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.1-cloud-foundry/60.1.1-binding-to-services.md)
- [60.2 Heroku](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.2-heroku.md)
- [60.3 Openshift](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.3-openshift.md)
- [60.4 亚马逊网络服务(AWS)](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.4-amazon-web-services-aws.md)
- [60.4.1 AWS Elastic Beanstalk](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.4-amazon-web-services-aws/60.4.1-aws-elastic-beanstalk.md)
- [60.4.2 总结](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.4-amazon-web-services-aws/60.4.2-summary.md)
- [60.5 Boxfuse和亚马逊网络服务](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.5-boxfuse-and-amazon-web-services.md)
- [60.6 Google Cloud](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/60.-deploying-to-the-cloud/60.6-google-cloud.md)
- [61. 安装Spring Boot应用](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/61.-installing-spring-boot-applications.md)
- [61.1 支持的操作系统](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/61.-installing-spring-boot-applications/61.1-supported-operating-systems.md)
- [61.2 Unix/Linux服务](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/61.-installing-spring-boot-applications/61.2-unix-and-linux-services.md)
- [61.2.1 安装为init.d服务(System V)](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/61.-installing-spring-boot-applications/61.2-unix-and-linux-services/61.2.1-installation-as-an-init.d-service-system-v.md)
- [61.2.2 安装为Systemd服务](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/61.-installing-spring-boot-applications/61.2-unix-and-linux-services/61.2.2-installation-as-a-systemd-service.md)
- [61.2.3 自定义启动脚本](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/61.-installing-spring-boot-applications/61.2-unix-and-linux-services/61.2.3-customizing-the-startup-script.md)
- [61.3 Microsoft Windows服务](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/61.-installing-spring-boot-applications/61.3-microsoft-windows-services.md)
- [62. 接下来阅读什么](https://jack80342.gitbook.io/spring-boot/vi.-deploying-spring-boot-applications/62.-what-to-read-next.md)
- [VII. Spring Boot CLI](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli.md)
- [63. 安装CLI](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/63.-installing-the-cli.md)
- [64. 使用CLI](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli.md)
- [64.1 使用CLI运行应用](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.1.-running-applications-with-the-cli.md)
- [64.1.1 推断"grab"依赖](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.1.-running-applications-with-the-cli/64.1.1-deduced-grab-dependencies.md)
- [64.1.2 推断"grab"坐标](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.1.-running-applications-with-the-cli/64.1.2-deduced-grab-coordinates.md)
- [64.1.3 默认import语句](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.1.-running-applications-with-the-cli/64.1.3-default-import-statements.md)
- [64.1.4 自动创建main方法](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.1.-running-applications-with-the-cli/64.1.4-automatic-main-method.md)
- [64.1.5 自定义依赖管理](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.1.-running-applications-with-the-cli/64.1.5-custom-dependency-management.md)
- [64.2 多源文件应用](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.2-applications-with-multiple-source-files.md)
- [64.3 应用打包](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.3-packaging-your-application.md)
- [64.4 初始化新工程](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.4-initialize-a-new-project.md)
- [64.5 使用内嵌shell](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.5-using-the-embedded-shell.md)
- [64.6 为CLI添加扩展](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/64.-using-the-cli/64.6-adding-extensions-to-the-cli.md)
- [65. 使用Groovy beans DSL开发应用](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/65.-developing-application-with-the-groovy-beans-dsl.md)
- [66. 使用settings.xml配置CLI](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/66.-configuring-the-cli-with-settings.xml.md)
- [67. 接下来阅读什么](https://jack80342.gitbook.io/spring-boot/vii.-spring-boot-cli/67.-what-to-read-next.md)
- [VIII. 构建工具插件](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins.md)
- [68. Spring Boot Maven插件](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/68.-spring-boot-maven-plugin.md)
- [68.1 包含该插件](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/68.-spring-boot-maven-plugin/68.1-including-the-plugin.md)
- [68.2 打包可执行jar和war文件](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/68.-spring-boot-maven-plugin/68.2-packaging-executable-jar-and-war-files.md)
- [69. Spring Boot Gradle插件](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/69.-spring-boot-gradle-plugin.md)
- [70. Spring Boot AntLib模块](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/70.-spring-boot-antlib-module.md)
- [70.1. Spring Boot Ant任务](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/70.-spring-boot-antlib-module/70.1.-spring-boot-ant-tasks.md)
- [70.1.1. spring-boot:exejar](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/70.-spring-boot-antlib-module/70.1.-spring-boot-ant-tasks/70.1.1.-spring-boot-exejar.md)
- [70.1.2. 示例](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/70.-spring-boot-antlib-module/70.1.-spring-boot-ant-tasks/70.1.2.-examples.md)
- [70.2. spring-boot:findmainclass](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/70.-spring-boot-antlib-module/70.2.-spring-boot-findmainclass.md)
- [70.2.1. 示例](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/70.-spring-boot-antlib-module/70.2.-spring-boot-findmainclass/70.2.1.-examples.md)
- [71. 对其他构建系统的支持](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/71.-supporting-other-build-systems.md)
- [71.1. 重新打包存档](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/71.-supporting-other-build-systems/71.1.-repackaging-archives.md)
- [71.2. 内嵌库](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/71.-supporting-other-build-systems/71.2.-nested-libraries.md)
- [71.3. 查找main类](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/71.-supporting-other-build-systems/71.3.-finding-a-main-class.md)
- [71.4. repackage实现示例](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/71.-supporting-other-build-systems/71.4.-example-repackage-implementation.md)
- [72. 接下来阅读什么](https://jack80342.gitbook.io/spring-boot/viii.-build-tool-plugins/72.-what-to-read-next.md)
- [IX. How-to指南](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides.md)
- [73. Spring Boot应用](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/73.-spring-boot-application.md)
- [73.1 创建自己的FailureAnalyzer](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/73.-spring-boot-application/73.1-create-your-own-failureanalyzer.md)
- [73.2 解决自动配置问题](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/73.-spring-boot-application/73.2-troubleshoot-auto-configuration.md)
- [73.3 启动前自定义Environment或ApplicationContext](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/73.-spring-boot-application/73.3-customize-the-environment-or-applicationcontext-before-it-starts.md)
- [73.4 构建ApplicationContext层次结构](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/73.-spring-boot-application/73.4-build-an-applicationcontext-hierarchy-adding-a-parent-or-root-context.md)
- [73.5 创建no-web应用](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/73.-spring-boot-application/73.5-create-a-non-web-application.md)
- [74. 属性与配置](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration.md)
- [74.1. 运行时暴露属性](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.1.-automatically-expand-properties-at-build-time.md)
- [74.1.1. 使用Maven自动暴露属性](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.1.-automatically-expand-properties-at-build-time/74.1.1.-automatic-property-expansion-using-maven.md)
- [74.1.2. 使用Gradle自动暴露属性](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.1.-automatically-expand-properties-at-build-time/74.1.2.-automatic-property-expansion-using-gradle.md)
- [74.2. 外部化SpringApplication配置](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.2.-externalize-the-configuration-of-springapplication.md)
- [74.3 改变应用程序外部配置文件的位置](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.3-change-the-location-of-external-properties-of-an-application.md)
- [74.4 使用“短”命令行参数](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.4-use-short-command-line-arguments.md)
- [74.5 使用YAML配置外部属性](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.5-use-yaml-for-external-properties.md)
- [74.6 设置生效的Spring profiles](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.6-set-the-active-spring-profiles.md)
- [74.7 根据环境改变配置](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.7-change-configuration-depending-on-the-environment.md)
- [74.8 发现外部属性的内置选项](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/74.-properties-and-configuration/74.8-discover-built-in-options-for-external-properties.md)
- [75. 内嵌网络服务器](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers.md)
- [75.1 使用另外的网络服务器](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.1-use-another-web-server.md)
- [75.2 配置Jetty](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.2-configure-jetty.md)
- [75.3 为应用添加Servlet、Filter或Listener](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.3-add-a-servlet-filter-or-listener-to-an-application.md)
- [75.3.1 使用Spring bean添加Servlet、Filter或Listener](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.3-add-a-servlet-filter-or-listener-to-an-application/75.3.1-add-a-servlet-filter-or-listener-by-using-a-spring-bean.md)
- [75.3.2 使用类路径扫描添加Servlet、Filter和Listener](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.3-add-a-servlet-filter-or-listener-to-an-application/75.3.2-add-servlets-filters-and-listeners-by-using-classpath-scanning.md)
- [75.4 改变HTTP端口](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.4-change-the-http-port.md)
- [75.5 使用随机未分配的HTTP端口](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.5-use-a-random-unassigned-http-port.md)
- [75.6 在运行时发现HTTP端口](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.6-discover-the-http-port-at-runtime.md)
- [75.7 配置SSL](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.7-configure-ssl.md)
- [75.8 配置HTTP/2](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.8-configure-http2.md)
- [75.8.1 HTTP/2与Undertow](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.8-configure-http2/75.8.1-http2-with-undertow.md)
- [75.8.2 HTTP/2与Jetty](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.8-configure-http2/75.8.2-http2-with-jetty.md)
- [75.8.3 HTTP/2与Tomcat](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.8-configure-http2/75.8.3-http2-with-tomcat.md)
- [75.9 配置访问日志](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.9-configure-access-logging.md)
- [75.10 在前端代理服务器后运行](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.10-running-behind-a-front-end-proxy-server.md)
- [75.10.1 自定义Tomcat代理配置](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.10-running-behind-a-front-end-proxy-server/75.10.1-customize-tomcats-proxy-configuration.md)
- [75.11 配置Tomcat](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.11-configure-tomcat.md)
- [75.12 启用Tomcat的多连接器](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.12-enable-multiple-connectors-with-tomcat.md)
- [75.13 使用Tomcat的LegacyCookieProcessor](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.13-use-tomcats-legacycookieprocessor.md)
- [75.14 配置Undertow](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.14-configure-undertow.md)
- [75.15 启用Undertow的多监听器](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.15-enable-multiple-listeners-with-undertow.md)
- [75.16 使用@ServerEndpoint创建WebSocket端点](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.16-create-websocket-endpoints-using-serverendpoint.md)
- [75.17 启用HTTP响应压缩](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/75.-embedded-web-servers/75.17-enable-http-response-compression.md)
- [76. Spring MVC](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc.md)
- [76.1 编写JSON REST服务](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc/76.1-write-a-json-rest-service.md)
- [76.2 编写XML REST服务](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc/76.2-write-an-xml-rest-service.md)
- [76.3 自定义Jackson ObjectMapper](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc/76.3-customize-the-jackson-objectmapper.md)
- [76.4 自定义@ResponseBody渲染](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc/76.4-customize-the-responsebody-rendering.md)
- [76.5 处理Multipart文件上传](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc/76.5-handling-multipart-file-uploads.md)
- [76.6 关闭Spring MVC DispatcherServlet](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc/76.6-switch-off-the-spring-mvc-dispatcherservlet.md)
- [76.7 关闭默认的MVC配置](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc/76.7-switch-off-the-default-mvc-configuration.md)
- [76.8 自定义ViewResolvers](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/76.-spring-mvc/76.8-customize-viewresolvers.md)
- [77. HTTP客户端](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/77.-http-clients.md)
- [77.1 配置RestTemplate使用代理](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/77.-http-clients/77.1-configure-resttemplate-to-use-a-proxy.md)
- [78. 日志](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/78.-logging.md)
- [78.1 配置Logback](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/78.-logging/78.1-configure-logback-for-logging.md)
- [78.1.1 配置logback只输出到文件](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/78.-logging/78.1-configure-logback-for-logging/78.1.1-configure-logback-for-file-only-output.md)
- [78.2 配置Log4j](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/78.-logging/78.2-configure-log4j-for-logging.md)
- [78.2.1 使用YAML或JSON配置Log4j2](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/78.-logging/78.2-configure-log4j-for-logging/78.2.1-use-yaml-or-json-to-configure-log4j-2.md)
- [79. 数据访问](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access.md)
- [79.1 配置自定义的数据源](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.1-configure-a-custom-datasource.md)
- [79.2 配置两个数据源](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.2-configure-two-datasources.md)
- [79.3 使用Spring Data仓库](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.3-use-spring-data-repositories.md)
- [79.4 从Spring配置分离@Entity定义](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.4-separate-entity-definitions-from-spring-configuration.md)
- [79.5 配置JPA属性](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.5-configure-jpa-properties.md)
- [79.6 配置Hibernate命名策略](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.6-configure-hibernate-naming-strategy.md)
- [79.7 使用自定义EntityManagerFactory](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.7-use-a-custom-entitymanagerfactory.md)
- [79.8 使用两个EntityManagers](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.8-use-two-entitymanagers.md)
- [79.9 使用传统的persistence.xml文件](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.9-use-a-traditional-persistence.xml-file.md)
- [79.10 使用Spring Data JPA和Mongo仓库](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.10-use-spring-data-jpa-and-mongo-repositories.md)
- [79.11 将Spring Data仓库暴露为REST端点](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.11-expose-spring-data-repositories-as-rest-endpoint.md)
- [79.12 配置JPA使用的组件](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.12-configure-a-component-that-is-used-by-jpa.md)
- [79.13 使用两个数据源配置jOOQ](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/79.-data-access/79.13-configure-jooq-with-two-datasources.md)
- [80. 数据库初始化](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/80.-database-initialization.md)
- [80.1 使用JPA初始化数据库](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/80.-database-initialization/80.1-initialize-a-database-using-jpa.md)
- [80.2 使用Hibernate初始化数据库](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/80.-database-initialization/80.2-initialize-a-database-using-hibernate.md)
- [80.3 初始化数据库](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/80.-database-initialization/80.3-initialize-a-database.md)
- [80.4 初始化Spring Batch数据库](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/80.-database-initialization/80.4-initialize-a-spring-batch-database.md)
- [80.5 使用高级数据迁移工具](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/80.-database-initialization/80.5-use-a-higher-level-database-migration-tool.md)
- [80.5.1 启动时执行Flyway数据库迁移](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/80.-database-initialization/80.5-use-a-higher-level-database-migration-tool/80.5.1-execute-flyway-database-migrations-on-startup.md)
- [80.5.2 启动时执行Liquibase数据库迁移](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/80.-database-initialization/80.5-use-a-higher-level-database-migration-tool/80.5.2-execute-liquibase-database-migrations-on-startup.md)
- [81. 消息传送](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/81.-messaging.md)
- [81.1 禁用事务JMS会话](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/81.-messaging/81.1-disable-transacted-jms-session.md)
- [82. 批处理应用](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/82.-batch-applications.md)
- [82.1 在启动时执行Spring Batch作业](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/82.-batch-applications/82.1-execute-spring-batch-jobs-on-startup.md)
- [83. 执行器](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/83.-actuator.md)
- [83.1 改变HTTP端口或执行器端点的地址](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/83.-actuator/83.1-change-the-http-port-or-address-of-the-actuator-endpoints.md)
- [83.2 自定义WhiteLabel错误页面](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/83.-actuator/83.2-customize-the-whitelabel-error-page.md)
- [84. 安全](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/84.-security.md)
- [84.1 关闭Spring Boot安全配置](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/84.-security/84.1-switch-off-the-spring-boot-security-configuration.md)
- [84.2 改变AuthenticationManager并添加用户账号](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/84.-security/84.2-change-the-authenticationmanager-and-add-user-accounts.md)
- [84.3 当前端使用代理服务器时启用HTTPS](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/84.-security/84.3-enable-https-when-running-behind-a-proxy-server.md)
- [85. 热交换](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/85.-hot-swapping.md)
- [85.1 重新加载静态内容](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/85.-hot-swapping/85.1-reload-static-content.md)
- [85.2. 在不重启容器的情况下重新加载模板](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/85.-hot-swapping/85.2.-reload-templates-without-restarting-the-container.md)
- [85.2.1 Thymeleaf模板](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/85.-hot-swapping/85.2.-reload-templates-without-restarting-the-container/85.2.1-thymeleaf-templates.md)
- [85.2.2 FreeMarker模板](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/85.-hot-swapping/85.2.-reload-templates-without-restarting-the-container/85.2.2-freemarker-templates.md)
- [85.2.3 Groovy模板](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/85.-hot-swapping/85.2.-reload-templates-without-restarting-the-container/85.2.3-groovy-templates.md)
- [85.3 应用快速重启](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/85.-hot-swapping/85.3-fast-application-restarts.md)
- [85.4 在不重启容器的情况下重新加载Java类](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/85.-hot-swapping/85.4-reload-java-classes-without-restarting-the-container.md)
- [86. 构建](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build.md)
- [86.1 生成构建信息](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.1-generate-build-information.md)
- [86.2 生成Git信息](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.2-generate-git-information.md)
- [86.3 自定义依赖版本](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.3-customize-dependency-versions.md)
- [86.4 使用Maven创建可执行JAR](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.4-create-an-executable-jar-with-maven.md)
- [86.5 将Spring Boot应用作为依赖](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.5-use-a-spring-boot-application-as-a-dependency.md)
- [86.6 在可执行jar运行时提取特定的版本](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.6-extract-specific-libraries-when-an-executable-jar-runs.md)
- [86.7 使用排除创建不可执行的JAR](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.7-create-a-non-executable-jar-with-exclusions.md)
- [86.8 远程调试使用Maven启动的Spring Boot项目](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.8-remote-debug-a-spring-boot-application-started-with-maven.md)
- [86.9 使用Ant构建可执行存档（不使用spring-boot-antlib）](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/86.-build/86.9-build-an-executable-archive-from-ant-without-using-spring-boot-antlib.md)
- [87. 传统部署](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/87.-traditional-deployment.md)
- [87.1 创建可部署的war文件](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/87.-traditional-deployment/87.1-create-a-deployable-war-file.md)
- [87.2 为老的servlet容器创建可部署的war文件](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/87.-traditional-deployment/87.2-create-a-deployable-war-file-for-older-servlet-containers.md)
- [87.3 将现有的应用转换为Spring Boot](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/87.-traditional-deployment/87.3-convert-an-existing-application-to-spring-boot.md)
- [87.4 部署WAR到Weblogic](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/87.-traditional-deployment/87.4-deploying-a-war-to-weblogic.md)
- [87.5 部署WAR到老的(Servlet2.5)容器](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/87.-traditional-deployment/87.5-deploying-a-war-in-an-old-servlet-2.5-container.md)
- [87.6 使用Lettuce来代替Jedis](https://jack80342.gitbook.io/spring-boot/ix.-how-to-guides/87.-traditional-deployment/87.6-use-jedis-instead-of-lettuce.md)
- [X.附录](https://jack80342.gitbook.io/spring-boot/x.-appendices.md)
- [附录A. 常见应用属性](https://jack80342.gitbook.io/spring-boot/x.-appendices/a.-common-application-properties.md)
- [附录B. 配置元数据](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata.md)
- [附录B.1. 元数据格式](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.1.-metadata-format.md)
- [附录B.1.1. Group属性](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.1.-metadata-format/b.1.1.-group-attributes.md)
- [附录B.1.2. Property属性](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.1.-metadata-format/b.1.2.-property-attributes.md)
- [附录B.1.3. Hint属性](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.1.-metadata-format/b.1.3-hint-attributes.md)
- [附录B.1.4. 可重复的元数据节点](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.1.-metadata-format/b.1.4.-repeated-metadata-items.md)
- [附录B.2. 提供人工提示](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.2-providing-manual-hints.md)
- [附录 B.2.1 值提示](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.2-providing-manual-hints/b.2.1-value-hint.md)
- [附录 B.2.2 值提供者](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.2-providing-manual-hints/b.2.2-value-provider.md)
- [附录B.3. 使用注解处理器产生自己的元数据](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.3.-generating-your-own-metadata-by-using-the-annotation-processor.md)
- [附录 B.3.1. 内嵌属性](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.3.-generating-your-own-metadata-by-using-the-annotation-processor/b.3.1.-nested-properties.md)
- [附录 B.3.2. 添加其他的元数据](https://jack80342.gitbook.io/spring-boot/x.-appendices/b.-configuration-metadata/b.3.-generating-your-own-metadata-by-using-the-annotation-processor/b.3.2.-adding-additional-metadata.md)
- [附录C. 自动配置类](https://jack80342.gitbook.io/spring-boot/x.-appendices/c.-auto-configuration-classes.md)
- [附录C.1. 来自spring-boot-autoconfigure模块](https://jack80342.gitbook.io/spring-boot/x.-appendices/c.-auto-configuration-classes/c.1.-from-the-spring-boot-autoconfigure-module.md)
- [附录C.2. 来自spring-boot-actuator-autoconfigure模块](https://jack80342.gitbook.io/spring-boot/x.-appendices/c.-auto-configuration-classes/c.2.-from-the-spring-boot-actuator-autoconfigure-module.md)
- [附录D. 测试的自动配置的标注](https://jack80342.gitbook.io/spring-boot/x.-appendices/d.-test-auto-configuration-annotations.md)
- [附录E. 可执行Jar格式](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format.md)
- [附录E.1. 内嵌JARs](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.1.-nested-jars.md)
- [附录E.1.1. 可执行Jar文件结构](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.1.-nested-jars/e.1.1.-the-executable-jar-file-structure.md)
- [附录E.1.2. 可执行War文件结构](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.1.-nested-jars/e.1.2.-the-executable-war-file-structure.md)
- [附录E.2. Spring Boot的"JarFile"类](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.2.-spring-boots-jarfile-class.md)
- [附录E.2.1. 对标准Java "JarFile"的兼容性](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.2.-spring-boots-jarfile-class/e.2.1.-compatibility-with-the-standard-java-jarfile.md)
- [附录E.3. 启动可执行Jars](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.3.-launching-executable-jars.md)
- [附录E.3.1 Launcher manifest](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.3.-launching-executable-jars/e.3.1.-launcher-manifest.md)
- [附录E.3.2. 暴露的存档](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.3.-launching-executable-jars/e.3.2.-exploded-archives.md)
- [附录E.4. PropertiesLauncher特性](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.4.-propertieslauncher-features.md)
- [附录E.5. 可执行jar的限制](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.5.-executable-jar-restrictions.md)
- [附录E.6. 可替代的单一jar解决方案](https://jack80342.gitbook.io/spring-boot/x.-appendices/e.-the-executable-jar-format/e.6.-alternative-single-jar-solutions.md)
- [附录F. 依赖版本](https://jack80342.gitbook.io/spring-boot/x.-appendices/f.-dependency-versions.md)
