创建一个可供整个应用程序访问的类

时间:2012-06-14 14:56:47

标签: java servlets jboss

在android中有一种机制可以确保整个应用程序只有一个类的实例可用。这可以通过从Application派生该类来完成。

有些事情可以在servlet中完成吗?我想在部署应用程序时初始化一个类。这个类应该只有一个实例。这样所有servlet都可以访问它。
我开始知道您可以将数据存储在servlet上下文的hashmap中。但我不想这样做。我想用自己的函数编写自己的类。该怎么做?

3 个答案:

答案 0 :(得分:4)

我认为你所追求的只是一个singleton

最好通过使用单个实例定义枚举来实现。 (请注意,枚举允许您将成员函数作为类。)

public enum YourSingleton {

    INSTANCE;

    // Your methods...

}

然后您将其作为

进行访问
YourSingleton.INSTANCE

答案 1 :(得分:4)

因此,使用自己的函数或任何您喜欢的函数创建您想要的任何类,并在启动时将其放在ServletContext中。您可以使用ServletContextListener初始化并删除它。有什么限制?

答案 2 :(得分:1)

使用singleton pattern,因此第一次调用实例方法(比如YourClass.getInstance())将创建实例,它将在整个应用程序中重用。