如何建立一个在Spring中创建单例的工厂

时间:2014-08-02 08:38:40

标签: java spring

我有一个必须使用工厂方法创建的对象:

public class FrameFactory {
    public static Frame createFrame() throws IOException, SerializationException {
        BXMLSerializer bxmlSerializer = new BXMLSerializer();
        return (Frame)bxmlSerializer.readObject(FrameFactory.class, "/gui/MainFrame.bxml");
    }
}

获得平均值的Spring调用将是这样的:

<bean id="frame" class="Frame" factory-method="createFrame"/>

但是,我希望这个对象是单例。

我的问题是Spring是否有一些现成的方法来制作单例或者我必须自己在FrameFactory中实现单例模式?

非常感谢。

1 个答案:

答案 0 :(得分:1)

使用静态工厂方法时,正确的语法是:

<bean id="frame" class="FrameFactory " factory-method="createFrame"/>

并且您不必创建工厂bean。默认情况下,frame bean将被实例化为单例bean。