Last updated : August 3, 2026

Auto-configuration Tutorials

Web Development

Spring Boot Auto-Configuration

1. Introduction

Spring Boot Auto-Configuration is a feature that automatically configures application components based on available dependencies.

It helps to:

  • Automatically create required beans

  • Reduce manual configuration

  • Speed up development

2. Why Auto-Configuration is Important

Before Spring Boot, developers had to configure many things manually:

  • DispatcherServlet

  • View resolvers

  • Database connections

  • Transaction management

  • Web server

Spring Boot removes this manual work using auto-configuration.

3. How Auto-Configuration Works

Auto-configuration works using:

@EnableAutoConfiguration

It configures beans based on:

  • Classpath dependencies

  • Application properties

  • Existing beans

@SpringBootApplication

This is the main annotation and includes:

  • @Configuration

  • @EnableAutoConfiguration

  • @ComponentScan

plaintext

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

When the application starts:

  • Spring Boot scans dependencies

  • Automatically configures required components

4. Steps to Implement Auto-Configuration

Step 1: Create Project

Use Spring Initializr with:

  • Project: Maven

  • Language: Java

  • Java Version: 17+

  • Dependency: Spring Web

Step 2: Project Structure

  • Main class is auto-generated

  • Follows standard Spring Boot structure

Step 3: Main Class

plaintext

@SpringBootApplication
public class AutoConfigDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(AutoConfigDemoApplication.class, args);
    }
}

Step 4: Create Controller

plaintext

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String hello() {
        return "Hello Spring Boot Auto Configuration";
    }
}

Step 5: Run Application

When you run the application, Spring Boot automatically:


  • Starts embedded Tomcat server


  • Configures DispatcherServlet


  • Enables Spring MVC


  • Configures JSON support

Step 6: Test Application

Open browser:

plaintext

http://localhost:8080/hello

Output:

plaintext

Hello Spring Boot Auto Configuration

5. What Spring Boot Configures Automatically

  • Web server (Tomcat)

  • Servlet configuration

  • MVC configuration

  • Request handling

  • JSON conversion

6. Conclusion

  • Auto-configuration reduces manual setup

  • Makes development faster

  • Core feature of Spring Boot

Job PortalJobs