Spring Framework and Spring Boot

  1. Introduction to Spring Boot
    1. Core Principles and Goals
      1. Convention Over Configuration
        1. Opinionated Defaults
          1. Reducing Boilerplate Code
            1. Rapid Application Development
              1. Production-Ready Applications
              2. Key Features
                1. Auto-Configuration
                  1. How Auto-Configuration Works
                    1. Conditional Configuration
                      1. Customizing Auto-Configuration
                        1. Excluding Auto-Configuration
                        2. Starter Dependencies
                          1. Common Starters
                            1. Custom Starters
                              1. Dependency Management
                              2. Embedded Servers
                                1. Tomcat
                                  1. Jetty
                                    1. Undertow
                                      1. Configuration Options
                                      2. The Spring Boot CLI
                                        1. Installation and Usage
                                          1. Groovy Support
                                            1. Command Line Features
                                          2. The @SpringBootApplication Annotation
                                            1. Composition of Annotations
                                              1. @SpringBootConfiguration
                                                1. @EnableAutoConfiguration
                                                  1. @ComponentScan
                                                  2. Customizing Application Startup
                                                    1. Exclude Parameters
                                                    2. Creating a Spring Boot Project
                                                      1. Using the Spring Initializr
                                                        1. Web Interface
                                                          1. Command Line Options
                                                            1. IDE Integration
                                                            2. Understanding the Project Structure
                                                              1. Source Folders
                                                                1. Resource Folders
                                                                  1. Static Resources
                                                                  2. The Build File
                                                                    1. Maven pom.xml
                                                                      1. Gradle build.gradle
                                                                        1. Managing Dependencies
                                                                        2. The Main Application Class
                                                                          1. Entry Point and main Method
                                                                            1. SpringApplication Class