openskills.info
Spring Boot Fundamentals logoCourse Preview

Spring Boot Fundamentals

Spring Boot is an application framework that assembles Spring libraries, configuration defaults, and an embedded runtime into a stand-alone Java application. It reduces setup work while keeping Spring's dependency-injection model available for customization.

itWeb development

Spring Boot Fundamentals

Spring Boot is an opinionated way to build stand-alone, production-oriented applications with the Spring Framework. It combines dependency management, starter dependencies, auto-configuration, an application bootstrap process, packaging tools, and operational endpoints. The result is usually a Java archive that starts with java -jar and runs its own application context and web server.

Spring Boot does not replace the Spring Framework. Spring supplies the container, dependency injection, web frameworks, data access, transactions, security integration, and other application services. Spring Boot selects useful defaults and connects those services according to the libraries and configuration it finds.

The application startup path

A typical application has one class annotated with @SpringBootApplication. Its main method calls SpringApplication.run. That call creates and refreshes a Spring ApplicationContext, discovers application components, evaluates auto-configuration conditions, creates beans, and starts infrastructure such as an embedded web server.

main method
    -> SpringApplication
    -> ApplicationContext
    -> component discovery and auto-configuration
    -> bean creation
    -> embedded server and application runners
    -> ready application

@SpringBootApplication combines three roles. It marks a configuration class, enables auto-configuration, and enables component scanning from its package downward. Put the application class in a root package so scanning covers the application's code without scanning unrelated libraries.

The application context is the runtime registry of beans. A bean is an object managed by Spring. Controllers, services, repositories, configuration objects, and infrastructure clients can all be beans. Dependency injection supplies one bean to another instead of requiring each consumer to construct its dependencies.

Constructor injection makes a dependency visible in the class contract. It also makes a class easier to test because a test can supply a controlled implementation without starting the entire application.

Starters and dependency management

Continue the course

This section is part of the paid course.

See pricing to subscribe, or log in if you already have access.

Where this skill leads

Relevant careers

See how this topic contributes to broader role-level skill maps.

Sources