《Spring Boot官方指南》翻译邀请

学技术并发网始终建议同学们阅读原版官方文档,所以并发网每月都会组织大家翻译各种官方技术文档。9月份并发网组织大家翻译《Spring Boot官方指南》,欢迎有兴趣的同学参与

如何领取

 通过评论领取想要翻译的文章,每次领取一章,如Spring Boot Documentation,翻译完后再领取其他章节。领取完成之后,建议在一个星期内翻译完成,如果不能完成翻译,也欢迎你邀请其他同学和你一起完成翻译。

如何提交?

翻译完成之后请登录到并发网提交成待审核状态,会有专门的编辑校对后进行发布。校对完之后被评为A级会升级您为译者,并加入译者沟通群。如果在本站翻译超过十篇文章,将有礼品赠送,比如签名版的《Java并发编程的艺术》或者其他图书。

 

Table of Contents

I. Spring Boot Documentation
1. About the documentation 2. Getting help 3. First steps 4. Working with Spring Boot 5. Learning about Spring Boot features 6. Moving to production 7. Advanced topics
II. Getting started
8. Introducing Spring Boot 9. System Requirements
9.1. Servlet containers
10. Installing Spring Boot
10.1. Installation instructions for the Java developer
10.1.1. Maven installation 10.1.2. Gradle installation
10.2. Installing the Spring Boot CLI
10.2.1. Manual installation 10.2.2. Installation with SDKMAN! 10.2.3. OSX Homebrew installation 10.2.4. MacPorts installation 10.2.5. Command-line completion 10.2.6. Quick start Spring CLI example
10.3. Upgrading from an earlier version of Spring Boot
11. Developing your first Spring Boot application
11.1. Creating the POM 11.2. Adding classpath dependencies 11.3. Writing the code
11.3.1. The @RestController and @RequestMapping annotations 11.3.2. The @EnableAutoConfiguration annotation 11.3.3. The “main” method
11.4. Running the example 11.5. Creating an executable jar
12. What to read next
III. Using Spring Boot
13. Build systems
13.1. Dependency management 13.2. Maven
13.2.1. Inheriting the starter parent 13.2.2. Using Spring Boot without the parent POM 13.2.3. Changing the Java version 13.2.4. Using the Spring Boot Maven plugin
13.3. Gradle 13.4. Ant 13.5. Starters
14. Structuring your code
14.1. Using the “default” package 14.2. Locating the main application class
15. Configuration classes
15.1. Importing additional configuration classes 15.2. Importing XML configuration
16. Auto-configuration
16.1. Gradually replacing auto-configuration 16.2. Disabling specific auto-configuration
17. Spring Beans and dependency injection 18. Using the @SpringBootApplication annotation 19. Running your application
19.1. Running from an IDE 19.2. Running as a packaged application 19.3. Using the Maven plugin 19.4. Using the Gradle plugin 19.5. Hot swapping
20. Developer tools
20.1. Property defaults 20.2. Automatic restart
20.2.1. Excluding resources 20.2.2. Watching additional paths 20.2.3. Disabling restart 20.2.4. Using a trigger file 20.2.5. Customizing the restart classloader 20.2.6. Known limitations
20.3. LiveReload 20.4. Global settings 20.5. Remote applications
20.5.1. Running the remote client application 20.5.2. Remote update 20.5.3. Remote debug tunnel
21. Packaging your application for production 22. What to read next
IV. Spring Boot features
23. SpringApplication
23.1. Customizing the Banner 23.2. Customizing SpringApplication 23.3. Fluent builder API 23.4. Application events and listeners 23.5. Web environment 23.6. Accessing application arguments 23.7. Using the ApplicationRunner or CommandLineRunner 23.8. Application exit 23.9. Admin features
24. Externalized Configuration
24.1. Configuring random values 24.2. Accessing command line properties 24.3. Application property files 24.4. Profile-specific properties 24.5. Placeholders in properties 24.6. Using YAML instead of Properties
24.6.1. Loading YAML 24.6.2. Exposing YAML as properties in the Spring Environment 24.6.3. Multi-profile YAML documents 24.6.4. YAML shortcomings 24.6.5. Merging YAML lists
24.7. Type-safe Configuration Properties
24.7.1. Third-party configuration 24.7.2. Relaxed binding 24.7.3. Properties conversion 24.7.4. @ConfigurationProperties Validation 24.7.5. @ConfigurationProperties vs. @Value
25. Profiles
25.1. Adding active profiles 25.2. Programmatically setting profiles 25.3. Profile-specific configuration files
26. Logging
26.1. Log format 26.2. Console output
26.2.1. Color-coded output
26.3. File output 26.4. Log Levels 26.5. Custom log configuration 26.6. Logback extensions
26.6.1. Profile-specific configuration 26.6.2. Environment properties
27. Developing web applications
27.1. The ‘Spring Web MVC framework’
27.1.1. Spring MVC auto-configuration 27.1.2. HttpMessageConverters 27.1.3. Custom JSON Serializers and Deserializers 27.1.4. MessageCodesResolver 27.1.5. Static Content 27.1.6. ConfigurableWebBindingInitializer 27.1.7. Template engines 27.1.8. Error Handling
Custom error pages Mapping error pages outside of Spring MVC Error Handling on WebSphere Application Server
27.1.9. Spring HATEOAS 27.1.10. CORS support
27.2. JAX-RS and Jersey 27.3. Embedded servlet container support
27.3.1. Servlets, Filters, and listeners
Registering Servlets, Filters, and listeners as Spring beans
27.3.2. Servlet Context Initialization
Scanning for Servlets, Filters, and listeners
27.3.3. The EmbeddedWebApplicationContext 27.3.4. Customizing embedded servlet containers
Programmatic customization Customizing ConfigurableEmbeddedServletContainer directly
27.3.5. JSP limitations
28. Security
28.1. OAuth2
28.1.1. Authorization Server 28.1.2. Resource Server
28.2. Token Type in User Info 28.3. Customizing the User Info RestTemplate
28.3.1. Client 28.3.2. Single Sign On
28.4. Actuator Security
29. Working with SQL databases
29.1. Configure a DataSource
29.1.1. Embedded Database Support 29.1.2. Connection to a production database 29.1.3. Connection to a JNDI DataSource
29.2. Using JdbcTemplate 29.3. JPA and ‘Spring Data’
29.3.1. Entity Classes 29.3.2. Spring Data JPA Repositories 29.3.3. Creating and dropping JPA databases
29.4. Using H2’s web console
29.4.1. Changing the H2 console’s path 29.4.2. Securing the H2 console
29.5. Using jOOQ
29.5.1. Code Generation 29.5.2. Using DSLContext 29.5.3. Customizing jOOQ
30. Working with NoSQL technologies
30.1. Redis
30.1.1. Connecting to Redis
30.2. MongoDB
30.2.1. Connecting to a MongoDB database 30.2.2. MongoTemplate 30.2.3. Spring Data MongoDB repositories 30.2.4. Embedded Mongo
30.3. Neo4j
30.3.1. Connecting to a Neo4j database 30.3.2. Using the embedded mode 30.3.3. Neo4jSession 30.3.4. Spring Data Neo4j repositories 30.3.5. Repository example
30.4. Gemfire 30.5. Solr
30.5.1. Connecting to Solr 30.5.2. Spring Data Solr repositories
30.6. Elasticsearch
30.6.1. Connecting to Elasticsearch using Jest 30.6.2. Connecting to Elasticsearch using Spring Data 30.6.3. Spring Data Elasticsearch repositories
30.7. Cassandra
30.7.1. Connecting to Cassandra 30.7.2. Spring Data Cassandra repositories
30.8. Couchbase
30.8.1. Connecting to Couchbase 30.8.2. Spring Data Couchbase repositories
31. Caching
31.1. Supported cache providers
31.1.1. Generic 31.1.2. JCache 31.1.3. EhCache 2.x 31.1.4. Hazelcast 31.1.5. Infinispan 31.1.6. Couchbase 31.1.7. Redis 31.1.8. Caffeine 31.1.9. Guava 31.1.10. Simple 31.1.11. None
32. Messaging
32.1. JMS
32.1.1. ActiveMQ support 32.1.2. Artemis support 32.1.3. HornetQ support 32.1.4. Using a JNDI ConnectionFactory 32.1.5. Sending a message 32.1.6. Receiving a message
32.2. AMQP
32.2.1. RabbitMQ support 32.2.2. Sending a message 32.2.3. Receiving a message
33. Calling REST services
33.1. RestTemplate customization
34. Sending email 35. Distributed Transactions with JTA
35.1. Using an Atomikos transaction manager 35.2. Using a Bitronix transaction manager 35.3. Using a Narayana transaction manager 35.4. Using a Java EE managed transaction manager 35.5. Mixing XA and non-XA JMS connections 35.6. Supporting an alternative embedded transaction manager
36. Hazelcast 37. Spring Integration 38. Spring Session 39. Monitoring and management over JMX 40. Testing
40.1. Test scope dependencies 40.2. Testing Spring applications 40.3. Testing Spring Boot applications
40.3.1. Detecting test configuration 40.3.2. Excluding test configuration 40.3.3. Working with random ports 40.3.4. Mocking and spying beans 40.3.5. Auto-configured tests 40.3.6. Auto-configured JSON tests 40.3.7. Auto-configured Spring MVC tests 40.3.8. Auto-configured Data JPA tests 40.3.9. Auto-configured REST clients 40.3.10. Auto-configured Spring REST Docs tests 40.3.11. Using Spock to test Spring Boot applications
40.4. Test utilities
40.4.1. ConfigFileApplicationContextInitializer 40.4.2. EnvironmentTestUtils 40.4.3. OutputCapture 40.4.4. TestRestTemplate
41. WebSockets 42. Web Services 43. Creating your own auto-configuration
43.1. Understanding auto-configured beans 43.2. Locating auto-configuration candidates 43.3. Condition annotations
43.3.1. Class conditions 43.3.2. Bean conditions 43.3.3. Property conditions 43.3.4. Resource conditions 43.3.5. Web application conditions 43.3.6. SpEL expression conditions
43.4. Creating your own starter
43.4.1. Naming 43.4.2. Autoconfigure module 43.4.3. Starter module
44. What to read next
V. Spring Boot Actuator: Production-ready features
45. Enabling production-ready features 46. Endpoints
46.1. Customizing endpoints 46.2. Hypermedia for actuator MVC endpoints 46.3. CORS support 46.4. Adding custom endpoints 46.5. Health information 46.6. Security with HealthIndicators
46.6.1. Auto-configured HealthIndicators 46.6.2. Writing custom HealthIndicators
46.7. Application information
46.7.1. Auto-configured InfoContributors 46.7.2. Custom application info information 46.7.3. Git commit information 46.7.4. Build information 46.7.5. Writing custom InfoContributors
47. Monitoring and management over HTTP
47.1. Securing sensitive endpoints 47.2. Customizing the management endpoint paths 47.3. Customizing the management server port 47.4. Configuring management-specific SSL 47.5. Customizing the management server address 47.6. Disabling HTTP endpoints 47.7. HTTP health endpoint access restrictions
48. Monitoring and management over JMX
48.1. Customizing MBean names 48.2. Disabling JMX endpoints 48.3. Using Jolokia for JMX over HTTP
48.3.1. Customizing Jolokia 48.3.2. Disabling Jolokia
49. Monitoring and management using a remote shell
49.1. Connecting to the remote shell
49.1.1. Remote shell credentials
49.2. Extending the remote shell
49.2.1. Remote shell commands 49.2.2. Remote shell plugins
50. Metrics
50.1. System metrics 50.2. DataSource metrics 50.3. Cache metrics 50.4. Tomcat session metrics 50.5. Recording your own metrics 50.6. Adding your own public metrics 50.7. Special features with Java 8 50.8. Metric writers, exporters and aggregation
50.8.1. Example: Export to Redis 50.8.2. Example: Export to Open TSDB 50.8.3. Example: Export to Statsd 50.8.4. Example: Export to JMX
50.9. Aggregating metrics from multiple sources 50.10. Dropwizard Metrics 50.11. Message channel integration
51. Auditing 52. Tracing
52.1. Custom tracing
53. Process monitoring
53.1. Extend configuration 53.2. Programmatically
54. What to read next
VI. Deploying Spring Boot applications
55. Deploying to the cloud
55.1. Cloud Foundry
55.1.1. Binding to services
55.2. Heroku 55.3. OpenShift 55.4. Boxfuse and Amazon Web Services 55.5. Google App Engine
56. Installing Spring Boot applications
56.1. Unix/Linux services
56.1.1. Installation as an init.d service (System V)
Securing an init.d service
56.1.2. Installation as a systemd service 56.1.3. Customizing the startup script
Customizing script when it’s written Customizing script when it runs
57. Microsoft Windows services 58. What to read next
VII. Spring Boot CLI
59. Installing the CLI 60. Using the CLI
60.1. Running applications using the CLI
60.1.1. Deduced “grab” dependencies 60.1.2. Deduced “grab” coordinates 60.1.3. Default import statements 60.1.4. Automatic main method 60.1.5. Custom dependency management
60.2. Testing your code 60.3. Applications with multiple source files 60.4. Packaging your application 60.5. Initialize a new project 60.6. Using the embedded shell 60.7. Adding extensions to the CLI
61. Developing application with the Groovy beans DSL 62. Configuring the CLI with settings.xml 63. What to read next
VIII. Build tool plugins
64. Spring Boot Maven plugin
64.1. Including the plugin 64.2. Packaging executable jar and war files
65. Spring Boot Gradle plugin
65.1. Including the plugin 65.2. Gradle dependency management 65.3. Packaging executable jar and war files 65.4. Running a project in-place 65.5. Spring Boot plugin configuration 65.6. Repackage configuration 65.7. Repackage with custom Gradle configuration
65.7.1. Configuration options 65.7.2. Available layouts
65.8. Understanding how the Gradle plugin works 65.9. Publishing artifacts to a Maven repository using Gradle
65.9.1. Configuring Gradle to produce a pom that inherits dependency management 65.9.2. Configuring Gradle to produce a pom that imports dependency management
66. Spring Boot AntLib module
66.1. Spring Boot Ant tasks
66.1.1. spring-boot:exejar 66.1.2. Examples
66.2. spring-boot:findmainclass
66.2.1. Examples
67. Supporting other build systems
67.1. Repackaging archives 67.2. Nested libraries 67.3. Finding a main class 67.4. Example repackage implementation
68. What to read next
IX. ‘How-to’ guides
69. Spring Boot application
69.1. Create your own FailureAnalyzer 69.2. Troubleshoot auto-configuration 69.3. Customize the Environment or ApplicationContext before it starts 69.4. Build an ApplicationContext hierarchy (adding a parent or root context) 69.5. Create a non-web application
70. Properties & configuration
70.1. Automatically expand properties at build time
70.1.1. Automatic property expansion using Maven 70.1.2. Automatic property expansion using Gradle
70.2. Externalize the configuration of SpringApplication 70.3. Change the location of external properties of an application 70.4. Use ‘short’ command line arguments 70.5. Use YAML for external properties 70.6. Set the active Spring profiles 70.7. Change configuration depending on the environment 70.8. Discover built-in options for external properties
71. Embedded servlet containers
71.1. Add a Servlet, Filter or Listener to an application
71.1.1. Add a Servlet, Filter or Listener using a Spring bean
Disable registration of a Servlet or Filter
71.1.2. Add Servlets, Filters, and Listeners using classpath scanning
71.2. Change the HTTP port 71.3. Use a random unassigned HTTP port 71.4. Discover the HTTP port at runtime 71.5. Configure SSL 71.6. Configure Access Logging 71.7. Use behind a front-end proxy server
71.7.1. Customize Tomcat’s proxy configuration
71.8. Configure Tomcat 71.9. Enable Multiple Connectors with Tomcat 71.10. Use Jetty instead of Tomcat 71.11. Configure Jetty 71.12. Use Undertow instead of Tomcat 71.13. Configure Undertow 71.14. Enable Multiple Listeners with Undertow 71.15. Use Tomcat 7.x or 8.0
71.15.1. Use Tomcat 7.x or 8.0 with Maven 71.15.2. Use Tomcat 7.x or 8.0 with Gradle
71.16. Use Jetty 9.2
71.16.1. Use Jetty 9.2 with Maven 71.16.2. Use Jetty 9.2 with Gradle
71.17. Use Jetty 8
71.17.1. Use Jetty 8 with Maven 71.17.2. Use Jetty 8 with Gradle
71.18. Create WebSocket endpoints using @ServerEndpoint 71.19. Enable HTTP response compression
72. Spring MVC
72.1. Write a JSON REST service 72.2. Write an XML REST service 72.3. Customize the Jackson ObjectMapper 72.4. Customize the @ResponseBody rendering 72.5. Handling Multipart File Uploads 72.6. Switch off the Spring MVC DispatcherServlet 72.7. Switch off the Default MVC configuration 72.8. Customize ViewResolvers 72.9. Velocity 72.10. Use Thymeleaf 3
73. HTTP clients
73.1. Configure RestTemplate to use a proxy
74. Logging
74.1. Configure Logback for logging
74.1.1. Configure logback for file only output
74.2. Configure Log4j for logging
74.2.1. Use YAML or JSON to configure Log4j 2
75. Data Access
75.1. Configure a DataSource 75.2. Configure Two DataSources 75.3. Use Spring Data repositories 75.4. Separate @Entity definitions from Spring configuration 75.5. Configure JPA properties 75.6. Use a custom EntityManagerFactory 75.7. Use Two EntityManagers 75.8. Use a traditional persistence.xml 75.9. Use Spring Data JPA and Mongo repositories 75.10. Expose Spring Data repositories as REST endpoint 75.11. Configure a component that is used by JPA
76. Database initialization
76.1. Initialize a database using JPA 76.2. Initialize a database using Hibernate 76.3. Initialize a database using Spring JDBC 76.4. Initialize a Spring Batch database 76.5. Use a higher-level database migration tool
76.5.1. Execute Flyway database migrations on startup 76.5.2. Execute Liquibase database migrations on startup
77. Batch applications
77.1. Execute Spring Batch jobs on startup
78. Actuator
78.1. Change the HTTP port or address of the actuator endpoints 78.2. Customize the ‘whitelabel’ error page 78.3. Actuator and Jersey
79. Security
79.1. Switch off the Spring Boot security configuration 79.2. Change the AuthenticationManager and add user accounts 79.3. Enable HTTPS when running behind a proxy server
80. Hot swapping
80.1. Reload static content 80.2. Reload templates without restarting the container
80.2.1. Thymeleaf templates 80.2.2. FreeMarker templates 80.2.3. Groovy templates 80.2.4. Velocity templates
80.3. Fast application restarts 80.4. Reload Java classes without restarting the container
80.4.1. Configuring Spring Loaded for use with Maven 80.4.2. Configuring Spring Loaded for use with Gradle and IntelliJ IDEA
81. Build
81.1. Generate build information 81.2. Generate git information 81.3. Customize dependency versions 81.4. Create an executable JAR with Maven 81.5. Create an additional executable JAR 81.6. Extract specific libraries when an executable jar runs 81.7. Create a non-executable JAR with exclusions 81.8. Remote debug a Spring Boot application started with Maven 81.9. Remote debug a Spring Boot application started with Gradle 81.10. Build an executable archive from Ant without using spring-boot-antlib 81.11. How to use Java 6
81.11.1. Embedded servlet container compatibility 81.11.2. Jackson 81.11.3. JTA API compatibility
82. Traditional deployment
82.1. Create a deployable war file 82.2. Create a deployable war file for older servlet containers 82.3. Convert an existing application to Spring Boot 82.4. Deploying a WAR to WebLogic 82.5. Deploying a WAR in an Old (Servlet 2.5) Container
X. Appendices
A. Common application properties B. Configuration meta-data
B.1. Meta-data format
B.1.1. Group Attributes B.1.2. Property Attributes B.1.3. Hint Attributes B.1.4. Repeated meta-data items
B.2. Providing manual hints
B.2.1. Value hint B.2.2. Value provider
Any Class reference Handle As Logger name Spring bean reference Spring profile name
B.3. Generating your own meta-data using the annotation processor
B.3.1. Nested properties B.3.2. Adding additional meta-data
C. Auto-configuration classes
C.1. From the “spring-boot-autoconfigure” module C.2. From the “spring-boot-actuator” module
D. Test auto-configuration annotations E. The executable jar format
E.1. Nested JARs
E.1.1. The executable jar file structure E.1.2. The executable war file structure
E.2. Spring Boot’s “JarFile” class
E.2.1. Compatibility with the standard Java “JarFile”
E.3. Launching executable jars
E.3.1. Launcher manifest E.3.2. Exploded archives
E.4. PropertiesLauncher Features E.5. Executable jar restrictions
E.5.1. Zip entry compression E.5.2. System ClassLoader
E.6. Alternative single jar solutions
F. Dependency versions
转载自  并发编程网 - ifeve.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值