Spring IoC Container: Inversion of Control

The Inversion of Control is a process by which application defines the dependency and Spring IoC Container manages these processes as well life cycle of beans. These dependencies are then satisfied in runtime by the Spring Framework. The IoC container is the main component of the Spring framework. It provides the main IoC container and AOP framework. The core container of the Spring Framework provides important functionality including dependency injection and bean life cycle management.

spring certification

We can say that The IoC or Inversion of Control is the core features of the Spring Framework. Developers uses the IoC container to manage the beans and its dependency in the application. Thus simplifies the implementation of business logic in the application.

Spring IoC Container

The Spring IoC Container actually comes with two distinct containers:
1. Bean Factories
2. Application Context

Bean Factories

The BeanFactory provides the configuration framework and basic functionality and support for Dependency Injection. The org.springframework.beans.factory.BeanFactory is the actual representation of the Spring IoC container that is responsible for containing and otherwise managing the aforementioned beans.

The BeanFactory interface is the central IoC container interface in Spring. Its responsibilities include instantiating or sourcing application objects, configuring such objects, and assembling the dependencies between these objects.

Spring IoC Container Inversion of Control

 

Spring ApplicationContext Container:

This container adds more enterprise-specific functionality such as the ability to resolve textual messages from a properties file and the ability to publish application events to interested event listeners. This container is defined by the org.springframework.context.ApplicationContext interface.

 

Spring Related Topics you may like

 

In Next Chapter we will discuss an example using Spring Bean Factory Container.

                                            << Previous || Next >>



 

Previous
Next