| 1 |
What is Dependency Injection? |
Understanding DI principles and benefits in Spring |
| 2 |
The Spring IoC Container |
How the container manages object creation and wiring |
| 3 |
Exercise – Implementing a Notification Service |
Practical example to understand service-based dependency injection |
| 4 |
Exercise – Implementing a User Registration Service |
Building a small app to explore @Service, @Repository, and DI in action |
| 5 |
Configuring Beans Using Annotations |
Defining and managing beans with annotations like @Component, @Service, etc. |
| 6 |
Controlling Bean Selection |
Using qualifiers and priorities to choose between multiple beans |
| 7 |
@Component |
Marking a class as a Spring-managed component |
| 8 |
@Service |
Specialized stereotype annotation for service-layer components |
| 9 |
@Qualifier |
Explicitly selecting the right bean when multiple implementations exist |
| 10 |
@Primary |
Setting a default bean when multiple candidates are present |
| 11 |
@Autowired |
Automatic dependency injection by type |
| 12 |
@Value |
Injecting simple values (from application.properties or constants) into beans |
| 13 |
getBeans() |
Retrieving beans programmatically from the application context |
| 14 |
@Bean (Scope & Lifecycle) |
Understanding custom bean creation, scopes (singleton, prototype), and lifecycle callbacks |
| 15 |
@Configuration |
Defining configuration classes that manage bean definitions and dependency wiring |