documentation.md 6.7 KB
Newer Older
Miykael_xxm's avatar
Miykael_xxm 已提交
1
# Documentation Overview
M
Mao 已提交
2 3 4 5 6 7

This section provides a brief overview of Spring Boot reference documentation.
It serves as a map for the rest of the document.

The latest copy of this document is available at [docs.spring.io/spring-boot/docs/current/reference/](https://docs.spring.io/spring-boot/docs/current/reference/).

Miykael_xxm's avatar
Miykael_xxm 已提交
8
## 1. First Steps
M
Mao 已提交
9 10 11 12 13 14 15 16 17

If you are getting started with Spring Boot or 'Spring' in general, start with [the following topics](getting-started.html#getting-started):

* **From scratch:** [Overview](getting-started.html#getting-started.introducing-spring-boot) | [Requirements](getting-started.html#getting-started.system-requirements) | [Installation](getting-started.html#getting-started.installing)

* **Tutorial:** [Part 1](getting-started.html#getting-started.first-application) | [Part 2](getting-started.html#getting-started.first-application.code)

* **Running your example:** [Part 1](getting-started.html#getting-started.first-application.run) | [Part 2](getting-started.html#getting-started.first-application.executable-jar)

Miykael_xxm's avatar
Miykael_xxm 已提交
18
## 2. Upgrading From an Earlier Version
M
Mao 已提交
19 20 21 22 23 24 25 26 27 28 29

You should always ensure that you are running a [supported version](https://github.com/spring-projects/spring-boot/wiki/Supported-Versions) of Spring Boot.

Depending on the version that you are upgrading to, you can find some additional tips here:

* **From 1.x:** [Upgrading from 1.x](actuator.html#upgrading.from-1x)

* **To a new feature release:** [Upgrading to New Feature Release](upgrading.html#upgrading.to-feature)

* **Spring Boot CLI:** [Upgrading the Spring Boot CLI](upgrading.html#upgrading.cli)

Miykael_xxm's avatar
Miykael_xxm 已提交
30
## 3. Developing with Spring Boot
M
Mao 已提交
31 32 33 34 35 36 37 38 39 40 41 42 43

Ready to actually start using Spring Boot? [We have you covered](using.html#using):

* **Build systems:** [Maven](using.html#using.build-systems.maven) | [Gradle](using.html#using.build-systems.gradle) | [Ant](using.html#using.build-systems.ant) | [Starters](using.html#using.build-systems.starters)

* **Best practices:** [Code Structure](using.html#using.structuring-your-code) | [@Configuration](using.html#using.configuration-classes) | [@EnableAutoConfiguration](using.html#using.auto-configuration) | [Beans and Dependency Injection](using.html#using.spring-beans-and-dependency-injection)

* **Running your code:** [IDE](using.html#using.running-your-application.from-an-ide) | [Packaged](using.html#using.running-your-application.as-a-packaged-application) | [Maven](using.html#using.running-your-application.with-the-maven-plugin) | [Gradle](using.html#using.running-your-application.with-the-gradle-plugin)

* **Packaging your app:** [Production jars](using.html#using.packaging-for-production)

* **Spring Boot CLI:** [Using the CLI](cli.html#cli)

Miykael_xxm's avatar
Miykael_xxm 已提交
44
## 4. Learning About Spring Boot Features
M
Mao 已提交
45 46 47 48 49 50 51 52 53 54 55

Need more details about Spring Boot’s core features?[The following content is for you](features.html#features):

* **Spring Application:** [SpringApplication](features.html#features.spring-application)

* **External Configuration:** [External Configuration](features.html#features.external-config)

* **Profiles:** [Profiles](features.html#features.profiles)

* **Logging:** [Logging](features.html#features.logging)

Miykael_xxm's avatar
Miykael_xxm 已提交
56
## 5. Web
M
Mao 已提交
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71

If you develop Spring Boot web applications, take a look at the following content:

* **Servlet Web Applications:** [Spring MVC, Jersey, Embedded Servlet Containers](web.html#web.servlet)

* **Reactive Web Applications:** [Spring Webflux, Embedded Servlet Containers](web.html#web.reactive)

* **Graceful Shutdown:** [Graceful Shutdown](web.html#web.graceful-shutdown)

* **Spring Security:** [Default Security Configuration, Auto-configuration for OAuth2, SAML](web.html#web.security)

* **Spring Session:** [Auto-configuration for Spring Session](web.html#web.spring-session)

* **Spring HATEOAS:** [Auto-configuration for Spring HATEOAS](web.html#web.spring-hateoas)

Miykael_xxm's avatar
Miykael_xxm 已提交
72
## 6. Data
M
Mao 已提交
73 74 75 76 77 78 79

If your application deals with a datastore, you can see how to configure that here:

* **SQL:** [Configuring a SQL Datastore, Embedded Database support, Connection pools, and more.](data.html#data.sql)

* **NOSQL:** [Auto-configuration for NOSQL stores such as Redis, MongoDB, Neo4j, and others.](data.html#data.nosql)

Miykael_xxm's avatar
Miykael_xxm 已提交
80
## 7. Messaging
M
Mao 已提交
81 82 83 84 85 86 87 88 89 90 91 92 93

If your application uses any messaging protocol, see one or more of the following sections:

* **JMS:** [Auto-configuration for ActiveMQ and Artemis, Sending and Receiving messages through JMS](messaging.html#messaging.jms)

* **AMQP:** [Auto-configuration for RabbitMQ](messaging.html#messaging.amqp)

* **Kafka:** [Auto-configuration for Spring Kafka](messaging.html#messaging.kafka)

* **RSocket:** [Auto-configuration for Spring Framework’s RSocket Support](messaging.html#messaging.rsocket)

* **Spring Integration:** [Auto-configuration for Spring Integration](messaging.html#messaging.spring-integration)

Miykael_xxm's avatar
Miykael_xxm 已提交
94
## 8. IO
M
Mao 已提交
95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111

If your application needs IO capabilities, see one or more of the following sections:

* **Caching:** [Caching support EhCache, Hazelcast, Infinispan and more](io.html#io.caching)

* **Quartz:** [Quartz Scheduling](io.html#io.quartz)

* **Mail:** [Sending Email](io.html#io.email)

* **Validation:** [JSR-303 Validation](io.html#io.validation)

* **REST Clients:** [Calling REST Services with RestTemplate and WebClient](io.html#io.rest-client)

* **Webservices:** [Auto-configuration for Spring Web Services](io.html#io.webservices)

* **JTA:** [Distributed Transactions with JTA](io.html#io.jta)

Miykael_xxm's avatar
Miykael_xxm 已提交
112
## 9. Container Images
M
Mao 已提交
113 114 115 116 117 118 119 120 121

Spring Boot provides first-class support for building efficient container images. You can read more about it here:

* **Efficient Container Images:** [Tips to optimize container images such as Docker images](container-images.html#container-images.efficient-images)

* **Dockerfiles:** [Building container images using dockerfiles](container-images.html#container-images.dockerfiles)

* **Cloud Native Buildpacks:** [Support for Cloud Native Buildpacks with Maven and Gradle](container-images.html#container-images.buildpacks)

Miykael_xxm's avatar
Miykael_xxm 已提交
122
## 10. Advanced Topics
M
Mao 已提交
123 124 125 126 127 128 129 130 131

Finally, we have a few topics for more advanced users:

* **Spring Boot Applications Deployment:** [Cloud Deployment](deployment.html#deployment.cloud) | [OS Service](deployment.html#deployment.installing.nix-services)

* **Build tool plugins:** [Maven](build-tool-plugins.html#build-tool-plugins.maven) | [Gradle](build-tool-plugins.html#build-tool-plugins.gradle)

* **Appendix:** [Application Properties](application-properties.html#appendix.application-properties) | [Configuration Metadata](configuration-metadata.html#appendix.configuration-metadata) | [Auto-configuration Classes](auto-configuration-classes.html#appendix.auto-configuration-classes) | [Test Auto-configuration Annotations](test-auto-configuration.html#appendix.test-auto-configuration) | [Executable Jars](executable-jar.html#appendix.executable-jar) | [Dependency Versions](dependency-versions.html#appendix.dependency-versions)