工厂方法的Spring注释

时间:2012-03-27 10:54:50

标签: java spring

我正在使用Spring 3.0作为我的项目,我有一个类MySingletonClass,它是单例,如下所示:

//@Component("mySingletonClass")
public class MySingletonClass {
    private static MySingletonClass obj = new MySingletonClass();

    public static MySingletonClass getSingleObj() {
        return obj;
    }
}

此类的spring xml bean配置如下:

<bean id="mySingletonClass" class="app.MySingletonClass"  factory-method="getSingleObj" />

我试图删除bean配置并使用注释。如何为工厂方法编写注释?

提前致谢!!

2 个答案:

答案 0 :(得分:2)

Spring默认创建像singleton这样的实例。你可以这样做。



    @Component("mySingletonClass")
    public class MySingletonClass {
    }


如果你不改变范围你的组件是单身。

答案 1 :(得分:1)

Spring组件会自动创建为Singletons。

在类

上声明注释@Controller
@Controller
public class MySingletonClass {
}

然后在Spring Config文件中声明如下:

<bean id="mySingleton" class="com.package.MySingletonClass">

然后在另一个类中使用,您可以使用Autowiring或Setter / Constructor依赖注入。

@Component 
public class OtherClass {
    @Autowired
    private MySingletonClass mySingleton;
}