Auto-Configuration — Spring Technical Interview Questions & Answers
How Boot configures beans based on the classpath.
Auto-Configuration
- Auto-configuration means Boot sets up beans for you when conditions match.
- Trigger: @EnableAutoConfiguration (inside @SpringBootApplication).
- Classpath check: If a JDBC driver exists, Boot may create a DataSource.
- Conditions: Annotations like @ConditionalOnClass and @ConditionalOnMissingBean decide yes/no.
- Your beans win: If you define your own @Bean, it can replace the default (@ConditionalOnMissingBean).
- Where listed: Auto-config classes are registered via AutoConfiguration.imports (modern Boot) / older spring.factories.
- Fighting auto-config without checking why a bean was created.
- Mention @ConditionalOnMissingBean — your custom bean overrides defaults.
Technical Interview Tip: Auto-config + conditions + override with your own bean.
Code Examples for Auto-Configuration
Auto-Configuration — working example
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication // @Configuration + @EnableAutoConfiguration + @ComponentScan
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
// pom.xml / build idea:
// spring-boot-starter-web pulls Tomcat + Spring MVCAuto-Configuration — @SpringBootApplication boots auto-config, component scan, and the app context; starters are curated dependency bundles.
How to Explain Auto-Configuration to an Interviewer
What is Auto-Configuration (sb)?
Used for a short Auto-Configuration sb example a small REST app Not just the heading
Give one small example of Auto-Configuration (sb).
the smallest Auto-Configuration sb example you can type How Boot configures beans based on the classpath
What mistake do beginners make with Auto-Configuration (sb)?
only saying “Auto-Configuration sb” with no example Show the fix
Where do you use Auto-Configuration (sb)?
a small REST app a short Auto-Configuration sb example