I think we have the option to use static factory methods to be able to instantiate beans using a factory method design
pattern. A class containing factory methods usually has a private constructor, to avoid instantiating it. That's where using the factory-method attribute is useful.