有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

工厂方法的JavaSpring注释

我的项目使用Spring 3.0,我有一个类MySingleToClass,它是singleton,如下所示:

//@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配置并使用注释。如何为factory方法编写注释

提前谢谢


共 (2) 个答案

  1. # 1 楼答案

    默认情况下,Spring会创建类似singleton的实例。你可以这么做

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

    若你们不改变范围,你们的组件就是单例的

  2. # 2 楼答案

    Spring组件将自动创建为单例

    在类上声明注释@Controller

    @Controller
    public class MySingletonClass {
    }
    

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

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

    然后,要在另一个类中使用,可以使用自动关联或Setter/Constructor依赖项注入

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