A Factory bean dynamically creates instances of a Java bean that you specify. A Factory is not a Java class, and is not an instance of the bean it creates. The Factory creates a bean instance whenever an event occurs, based on a connection you make from the event.
Generally, when you add a bean to a composite bean, a fixed instance of that bean is created. When you add a Factory bean, however, a bean instance is not created. Instead, you can make a connection to dynamically create a bean instance of the type specified for the Factory. Connections to the Factory's features then operate on the created bean instance. If you create another bean instance, connections to the Factory's features operate on the newly created bean instance rather than on the previously created instance. The Factory bean serves as a bean instance generator.
Dynamically Creating and Accessing a Bean Instance
Factory and Variable Beans
Beans for Visual Composition