The following article explains what is a bean in Spring.

In fact, a bean is nothing but an object that the Spring IoC container manages. In other words, a bean is an instance of a class that the Spring framework creates, configures, and manages. Actually, the term “bean” is used because they are managed as Java objects that are created from Java classes, just like coffee beans are used to make coffee.

Basically, we create a bean in Spring using Java code and configure using XML or Java annotations. The Spring container that instantiates the bean, also injects its dependencies, and manages its lifecycle.

Also, the Spring container stores the beans it manages in a bean factory, where they are created. So, the bean factory creates the beans by calling their constructors and setting their properties. It then stores the beans and provides them to other objects that require them.

In fact, there are different ways to configure the beans. For instance, we can do it through XML configuration files, Java annotations, and Java code. The configuration includes specifying the class of the bean, its dependencies, and any other settings required for the bean to function properly.

Spring provides many built-in beans, such as the application context, which represents the Spring application’s runtime environment, and the bean post-processor, which allows customization of the bean’s lifecycle. Developers can also create custom beans to represent any object required by their application.

To summarize, beans in Spring provide a powerful way to manage objects and dependencies within a Spring application, allowing for modular and reusable code.

Further Reading

Spring Framework Practice Problems and Their Solutions

Java Practice Exercise