# 13.5. Starters
### 13.5. Starters
Starters是一个依赖描述符的集合,你可以将它包含进项目中,这样添加依赖就非常方便。你可以获取所有Spring及相关技术的一站式服务,而不需要翻阅示例代码,拷贝粘贴大量的依赖描述符。例如,如果你想使用Spring和JPA进行数据库访问,只需要在项目中包含`spring-boot-starter-data-jpa`依赖,然后你就可以开始了。
该starters包含很多搭建,快速运行项目所需的依赖,并提供一致的,可管理传递性的依赖集。
**名字有什么含义**:所有官方starters遵循相似的命名模式:`spring-boot-starter-*`,在这里`*`是一种特殊的应用程序类型。该命名结构旨在帮你找到需要的starter。很多集成于IDEs中的Maven插件允许你通过名称name搜索依赖。例如,使用相应的Eclipse或STS插件,你可以简单地在POM编辑器中点击`ctrl-space`,然后输入"spring-boot-starter"就可以获取一个完整列表。正如[Creating your own starter](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-custom-starter)章节中讨论的,第三方starters不应该以`spring-boot`开头,因为它跟Spring Boot官方artifacts冲突。一个acme的第三方starter通常命名为`acme-spring-boot-starter`。
以下应用程序starters是Spring Boot在`org.springframework.boot` group下提供的:
**表 13.1. Spring Boot application starters**
名称描述Pomspring-boot-starter-test用于测试Spring Boot应用,支持常用测试类库,包括JUnit, Hamcrest和Mockito[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-test/pom.xml)spring-boot-starter-mobile用于使用Spring Mobile开发web应用[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-mobile/pom.xml)spring-boot-starter-social-twitter对使用Spring Social Twitter的支持[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-social-twitter/pom.xml)spring-boot-starter-cache用于使用Spring框架的缓存支持[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-cache/pom.xml)spring-boot-starter-activemq用于使用Apache ActiveMQ实现JMS消息[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-activemq/pom.xml)spring-boot-starter-jta-atomikos用于使用Atomikos实现JTA事务[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-jta-atomikos/pom.xml)spring-boot-starter-aop用于使用Spring AOP和AspectJ实现面向切面编程[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-aop/pom.xml)spring-boot-starter-web用于使用Spring MVC构建web应用,包括RESTful。Tomcat是默认的内嵌容器[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-web/pom.xml)spring-boot-starter-data-elasticsearch用于使用Elasticsearch搜索,分析引擎和Spring Data Elasticsearch[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-elasticsearch/pom.xml)spring-boot-starter-jdbc对JDBC的支持(使用Tomcat JDBC连接池)[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-jdbc/pom.xml)spring-boot-starter-batch对Spring Batch的支持[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-batch/pom.xml)spring-boot-starter-social-facebook用于使用Spring Social Facebook[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-social-facebook/pom.xml)spring-boot-starter-web-services对Spring Web服务的支持[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-web-services/pom.xml)spring-boot-starter-jta-narayanaSpring Boot Narayana JTA Starter[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-jta-narayana/pom.xml)spring-boot-starter-thymeleaf用于使用Thymeleaf模板引擎构建MVC web应用[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-thymeleaf/pom.xml)spring-boot-starter-mail用于使用Java Mail和Spring框架email发送支持[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-mail/pom.xml)spring-boot-starter-jta-bitronix用于使用Bitronix实现JTA事务[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-jta-bitronix/pom.xml)spring-boot-starter-data-mongodb用于使用基于文档的数据库MongoDB和Spring Data MongoDB[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-mongodb/pom.xml)spring-boot-starter-validation用于使用Hibernate Validator实现Java Bean校验[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-validation/pom.xml)spring-boot-starter-jooq用于使用JOOQ访问SQL数据库,可使用[spring-boot-starter-data-jpa](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-data-jpa)或[spring-boot-starter-jdbc](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-jdbc)替代[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-jooq/pom.xml)spring-boot-starter-redis用于使用Spring Data Redis和Jedis客户端操作键-值存储的Redis,在1.4中已被[spring-boot-starter-data-redis](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-data-redis)取代[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-redis/pom.xml)spring-boot-starter-data-cassandra用于使用分布式数据库Cassandra和Spring Data Cassandra[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-cassandra/pom.xml)spring-boot-starter-hateoas用于使用Spring MVC和Spring HATEOAS实现基于超媒体的RESTful web应用[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-hateoas/pom.xml)spring-boot-starter-integration用于使用Spring Integration[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-integration/pom.xml)spring-boot-starter-data-solr通过Spring Data Solr使用Apache Solr搜索平台[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-solr/pom.xml)spring-boot-starter-freemarker用于使用FreeMarker模板引擎构建MVC web应用[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-freemarker/pom.xml)spring-boot-starter-jersey用于使用JAX-RS和Jersey构建RESTful web应用,可使用[spring-boot-starter-web](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-web)替代[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-jersey/pom.xml)spring-boot-starter核心starter,包括自动配置支持,日志和YAML[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter/pom.xml)spring-boot-starter-data-couchbase用于使用基于文档的数据库Couchbase和Spring Data Couchbase[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-couchbase/pom.xml)spring-boot-starter-artemis使用Apache Artemis实现JMS消息[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-artemis/pom.xml)spring-boot-starter-cloud-connectors对Spring Cloud Connectors的支持,用于简化云平台下(例如Cloud Foundry 和Heroku)服务的连接[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-cloud-connectors/pom.xml)spring-boot-starter-social-linkedin用于使用Spring Social LinkedIn[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-social-linkedin/pom.xml)spring-boot-starter-velocity用于使用Velocity模板引擎构建MVC web应用,**从1.4版本过期**[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-velocity/pom.xml)spring-boot-starter-data-rest用于使用Spring Data REST暴露基于REST的Spring Data仓库[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-rest/pom.xml)spring-boot-starter-data-gemfire用于使用分布式数据存储GemFire和Spring Data GemFire[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-gemfire/pom.xml)spring-boot-starter-groovy-templates用于使用Groovy模板引擎构建MVC web应用[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-groovy-templates/pom.xml)spring-boot-starter-amqp用于使用Spring AMQP和Rabbit MQ[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-amqp/pom.xml)spring-boot-starter-hornetq用于使用HornetQ实现JMS消息,被[spring-boot-starter-artemis](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-artemis)取代[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-hornetq/pom.xml)spring-boot-starter-ws用于使用Spring Web服务,被[spring-boot-starter-web-services](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-web-services)取代[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-ws/pom.xml)spring-boot-starter-security对Spring Security的支持[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-security/pom.xml)spring-boot-starter-data-redis用于使用Spring Data Redis和Jedis客户端操作键—值数据存储Redis[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-redis/pom.xml)spring-boot-starter-websocket用于使用Spring框架的WebSocket支持构建WebSocket应用[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-websocket/pom.xml)spring-boot-starter-mustache用于使用Mustache模板引擎构建MVC web应用[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-mustache/pom.xml)spring-boot-starter-data-neo4j用于使用图数据库Neo4j和Spring Data Neo4j[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-neo4j/pom.xml)spring-boot-starter-data-jpa用于使用Hibernate实现Spring Data JPA[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-data-jpa/pom.xml)除了应用程序starters,以下starters可用于添加[production ready](../V.%20Spring%20Boot%20Actuator/README.md)的功能:
**表 13.2. Spring Boot生产级starters**
名称描述Pomspring-boot-starter-actuator用于使用Spring Boot的Actuator,它提供了production ready功能来帮助你监控和管理应用程序[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-actuator/pom.xml)spring-boot-starter-remote-shell用于通过SSH,使用CRaSH远程shell监控,管理你的应用[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-remote-shell/pom.xml)最后,Spring Boot还包含一些用于排除或交换某些特定技术方面的starters:
**表 13.3. Spring Boot技术性starters**
名称描述Pomspring-boot-starter-undertow用于使用Undertow作为内嵌servlet容器,可使用[spring-boot-starter-tomcat](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-tomcat)替代[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-undertow/pom.xml)spring-boot-starter-logging用于使用Logback记录日志,默认的日志starter[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-logging/pom.xml)spring-boot-starter-tomcat用于使用Tomcat作为内嵌servlet容器,[spring-boot-starter-web](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-web)使用的默认servlet容器[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-tomcat/pom.xml)spring-boot-starter-jetty用于使用Jetty作为内嵌servlet容器,可使用[spring-boot-starter-tomcat](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-tomcat)替代[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-jetty/pom.xml)spring-boot-starter-log4j2用于使用Log4j2记录日志,可使用[spring-boot-starter-logging](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#spring-boot-starter-logging)代替[Pom](https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-log4j2/pom.xml)**注**:查看GitHub上位于`spring-boot-starters`模块内的[README文件](http://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/README.adoc),可以获取到一个社区贡献的其他starters列表。
- Introduction
- I. Spring Boot文档
- 1. 关于本文档
- 2. 获取帮助
- 3. 第一步
- 4. 使用Spring Boot
- 5. 了解Spring Boot特性
- 6. 迁移到生产环境
- 7. 高级主题
- II. 开始
- 8. Spring Boot介绍
- 9. 系统要求
- 9.1. Servlet容器
- 10. Spring Boot安装
- 10.1. 为Java开发者准备的安装指南
- 10.2. Spring Boot CLI安装
- 10.3. 从Spring Boot早期版本升级
- 11. 开发你的第一个Spring Boot应用
- 11.1. 创建POM
- 11.2. 添加classpath依赖
- 11.3. 编写代码
- 11.4. 运行示例
- 11.5. 创建一个可执行jar
- 12. 接下来阅读什么
- III. 使用Spring Boot
- 13. 构建系统
- 13.1. 依赖管理
- 13.2. Maven
- 13.3. Gradle
- 13.4. Ant
- 13.5. Starters
- 14. 组织你的代码
- 14.1. 使用"default"包
- 14.2. 放置应用的main类
- 15. 配置类
- 15.1. 导入其他配置类
- 15.2. 导入XML配置
- 16. 自动配置
- 16.1. 逐步替换自动配置
- 16.2. 禁用特定的自动配置
- 17. Spring Beans和依赖注入
- 18. 使用@SpringBootApplication注解
- 19. 运行应用程序
- 19.1. 从IDE中运行
- 19.2. 作为一个打包后的应用运行
- 19.3. 使用Maven插件运行
- 19.4. 使用Gradle插件运行
- 19.5. 热交换
- 20. 开发者工具
- 20.1 默认属性
- 20.2 自动重启
- 20.3 LiveReload
- 20.4 全局设置
- 20.5 远程应用
- IV. Spring Boot特性
- 23. SpringApplication
- 23.1 启动失败
- 23.2. 自定义Banner
- 23.3. 自定义SpringApplication
- 23.4. 流式构建API
- 23.5. Application事件和监听器
- 23.6. Web环境
- 23.7 访问应用参数
- 23.8. 使用ApplicationRunner或CommandLineRunner
- 23.9 Application退出
- 24.外化配置
- 24.1. 配置随机值
- 24.2. 访问命令行属性
- 24.3. Application属性文件
- 24.4. Profile-specific属性
- 24.5. 属性占位符
- 24.6. 使用YAML代替Properties
- 25. Profiles
- 25.1. 添加激活的profiles
- 25.2.以编程方式设置profiles
- 25.3. Profile-specific配置文件
- 26.1. 日志格式
- 26.2. 控制台输出
- 26.3. 文件输出
- 26.4. 日志级别
- 26.5. 自定义日志配置
- 26.6 Logback扩展
- 27. 开发Web应用
- 27.1. Spring Web MVC框架
- 27.2 JAX-RS和Jersey
- 27.3 内嵌servlet容器支持
- 28. 安全
- 28.1 OAuth2
- 28.2 User Info中的Token类型
- 28.3 自定义User Info RestTemplate
- 28.4 Actuator安全
- 29. 使用SQL数据库
- 29.1. 配置DataSource
- 29.2. 使用JdbcTemplate
- 29.3. JPA和Spring Data
- 29.4 使用H2的web控制台
- 29.5 使用jOOQ
- 30. 使用NoSQL技术
- 30.1. Redis
- 30.2. MongoDB
- 30.3 Neo4j
- 30.4 Gemfire
- 30.5 Solr
- 30.6 Elasticsearch
- 30.7 Cassandra
- 30.8 Couchbase
- 31. 缓存
- 31.1 支持的缓存提供商
- 32. 消息
- 32.1. JMS
- 32.2 AMQP
- 33. 调用REST服务
- 34. 发送邮件
- 35. 使用JTA处理分布式事务
- 35.1 使用Atomikos事务管理器
- 35.2 使用Bitronix事务管理器
- 35.3 使用Narayana事务管理器
- 35.4 使用J2EE管理的事务管理器
- 35.5 混合XA和non-XA的JMS连接
- 35.6 支持可替代的内嵌事务管理器
- 36. Hazelcast
- 37. Spring集成
- 38. Spring Session
- 39. 基于JMX的监控和管理
- 40. 测试
- 40.1 测试作用域依赖
- 40.2 测试Spring应用
- 40.3 测试Spring Boot应用
- 40.4 测试工具类
- 41. WebSockets
- 42. Web Services
- 43. 创建自己的auto-configuration
- 43.1 理解自动配置的beans
- 43.2 定位自动配置候选者
- 43.3 条件注解
- 43.4 创建自己的starter
- 44. 接下来阅读什么
- V. Spring Boot执行器: Production-ready特性
- 45. 开启production-ready特性
- 46. 端点
- 46.1 自定义端点
- 46.2 执行器MVC端点的超媒体支持
- 46.3 CORS支持
- 46.4 添加自定义端点
- 46.5 健康信息
- 46.6 安全与HealthIndicators
- 46.7 应用信息
- 47. 基于HTTP的监控和管理
- 47.1 保护敏感端点
- 47.2 自定义管理端点路径
- 47.4 配置管理相关的SSL
- 47.5 自定义管理服务器地址
- 47.6 禁用HTTP端点
- 47.7 HTTP health端点访问限制
- 48. 基于JMX的监控和管理
- 48.1 自定义MBean名称
- 48.2 禁用JMX端点
- 48.3 使用Jolokia通过HTTP实现JMX远程管理
- 49. 使用远程shell进行监控和管理
- 49.1 连接远程shell
- 49.2 扩展远程shell
- 50. 度量指标
- 50.1 系统指标
- 50.2 数据源指标
- 50.3 缓存指标
- 50.4 Tomcat session指标
- 50.5 记录自己的指标
- 50.6 添加自己的公共指标
- 50.7 使用Java8的特性
- 50.8 指标写入,导出和聚合
- 50.9 聚合多个来源的指标
- 50.10 Dropwizard指标
- 50.11 消息渠道集成
- 51. 审计
- 52. 追踪
- 52.1 自定义追踪
- 53.1 扩展配置
- 53.2 以编程方式
- 54. 接下来阅读什么
- 55. 部署到云端
- 55.1 Cloud Foundry
- 55.2 Heroku
- 55.3 Openshift
- 55.4 Boxfuse和Amazon Web Services
- 55.5 Google App Engine
- 56. 安装Spring Boot应用
- 56.1 Unix/Linux服务
- 56.2 Microsoft Windows服务
- 57. 接下来阅读什么
- VII. Spring Boot CLI
- 58. 安装CLI
- 59. 使用CLI
- 59.1 使用CLI运行应用
- 59.2 测试你的代码
- 59.3 多源文件应用
- 59.4 应用打包
- 59.5 初始化新工程
- 59.6 使用内嵌shell
- 59.7 为CLI添加扩展
- 60. 使用Groovy beans DSL开发应用
- 61. 使用settings.xml配置CLI
- 62. 接下来阅读什么
- VIII. 构建工具插件
- 63. Spring Boot Maven插件
- 63.1 包含该插件
- 63.2 打包可执行jar和war文件
- 64. Spring Boot Gradle插件
- 64.1 包含该插件
- 64.2 Gradle依赖管理
- 64.3 打包可执行jar和war文件
- 64.4 就地(in-place)运行项目
- 64.5 Spring Boot插件配置
- 64.6 Repackage配置
- 64.7 使用Gradle自定义配置进行Repackage
- 64.8 理解Gradle插件是如何工作的
- 64.9 使用Gradle将artifacts发布到Maven仓库
- 65. Spring Boot AntLib模块
- 66. 对其他构建系统的支持
- 66.1. 重新打包存档
- 66.2. 内嵌库
- 66.3. 查找main类
- 66.4. repackage实现示例
- 67. 接下来阅读什么
- IX. How-to指南
- 68. Spring Boot应用
- 68.1 创建自己的FailureAnalyzer
- 68.2 解决自动配置问题
- 68.3 启动前自定义Environment或ApplicationContext
- 68.5 创建no-web应用
- 69.1. 运行时暴露属性
- 69.2. 外部化SpringApplication配置
- 69.3 改变应用程序外部配置文件的位置
- 69.4 使用'short'命令行参数
- 69.5 使用YAML配置外部属性
- 69.6 设置生效的Spring profiles
- 69.7 根据环境改变配置
- 69.8 发现外部属性的内置选项
- 70. 内嵌servlet容器
- 70.1 为应用添加Servlet,Filter或Listener
- 70.2 改变HTTP端口
- 70.3 使用随机未分配的HTTP端口
- 70.4 发现运行时的HTTP端口
- 70.5 配置SSL
- 70.6 配置访问日志
- 70.7 在前端代理服务器后使用
- 70.8 配置Tomcat
- 70.9 启用Tomcat的多连接器
- 70.10 使用Tomcat的LegacyCookieProcessor
- 70.11 使用Jetty替代Tomcat
- 70.12 配置Jetty
- 70.13 使用Undertow替代Tomcat
- 70.14 配置Undertow
- 70.15 启用Undertow的多监听器
- 70.16 使用Tomcat 7.x或8.0
- 70.17 使用Jetty9.2
- 70.18 使用Jetty 8
- 70.19 使用@ServerEndpoint创建WebSocket端点
- 71. Spring MVC
- 71.1 编写JSON REST服务
- 71.2 编写XML REST服务
- 71.3 自定义Jackson ObjectMapper
- 71.4 自定义@ResponseBody渲染
- 71.5 处理Multipart文件上传
- 71.6 关闭Spring MVC DispatcherServlet
- 71.7 关闭默认的MVC配置
- 71.8 自定义ViewResolvers
- 71.9 Velocity
- 71.10 使用Thymeleaf 3
- 73. 日志
- 73.1 配置Logback
- 73.2 配置Log4j
- 74. 数据访问
- 74.1 配置数据源
- 74.2 配置两个数据源
- 74.3 使用Spring Data仓库
- 74.4 从Spring配置分离@Entity定义
- 74.5 配置JPA属性
- 74.6 使用自定义EntityManagerFactory
- 74.7 使用两个EntityManagers
- 74.8 使用普通的persistence.xml
- 74.9 使用Spring Data JPA和Mongo仓库
- 74.10 将Spring Data仓库暴露为REST端点
- 74.11 配置JPA使用的组件
- 75. 数据库初始化
- 75.1 使用JPA初始化数据库
- 75.2 使用Hibernate初始化数据库
- 75.3 使用Spring JDBC初始化数据库
- 75.4 初始化Spring Batch数据库
- 75.5 使用高级数据迁移工具
- 76. 批处理应用
- 76.1 在启动时执行Spring Batch作业
- 77. 执行器
- 77.1 改变HTTP端口或执行器端点的地址
- 77.2 自定义WhiteLabel错误页面
- 77.3 Actuator和Jersey
- 78. 安全
- 78.1 关闭Spring Boot安全配置
- 78.2 改变AuthenticationManager并添加用户账号
- 78.3 当前端使用代理服务器时启用HTTPS
- 79. 热交换
- 79.1 重新加载静态内容
- 79.2. 在不重启容器的情况下重新加载模板
- 79.3 应用快速重启
- 79.4 在不重启容器的情况下重新加载Java类
- 80. 构建
- 80.1 生成构建信息
- 80.2 生成Git信息
- 80.3 自定义依赖版本
- 80.4 使用Maven创建可执行JAR
- 80.5 将Spring Boot应用作为依赖
- 80.6 在可执行jar运行时提取特定的版本
- 80.7 使用排除创建不可执行的JAR
- 80.8 远程调试使用Maven启动的Spring Boot项目
- 80.9 远程调试使用Gradle启动的Spring Boot项目
- 80.10 使用Ant构建可执行存档
- 80.11 如何使用Java6
- 81. 传统部署
- 81.1 创建可部署的war文件
- 81.2 为老的servlet容器创建可部署的war文件
- 81.3 将现有的应用转换为Spring Boot
- 81.4 部署WAR到Weblogic
- X.附录
- 附录A. 常见应用属性
- 附录B. 配置元数据
- 附录B.1. 元数据格式
- 附录B.2. 使用注解处理器产生自己的元数据
- 附录C. 自动配置类
- 附录 C.1. 来自spring-boot-autoconfigure模块
- 附录C.2. 来自spring-boot-actuator模块
- 附录D. 可执行jar格式
- 附录D.1. 内嵌JARs
- 附录D.2. Spring Boot的"JarFile"类
- 附录D.3. 启动可执行jars
- 附录D.4. PropertiesLauncher特性
- 附录D.5. 可执行jar的限制
- 附录D.6. 可替代的单一jar解决方案
- 附录E. 依赖版本