Java 如何实现像EJB3.0bean这样的单例?

Java 如何实现像EJB3.0bean这样的单例?,java,singleton,ejb-3.0,Java,Singleton,Ejb 3.0,我需要实现一个简单的DAOBean,它还缓存从数据库读取的数据。此DAOBean由无状态bean使用 因为EJB3.0不支持单例bean,那么实现这种DAOBean的正确方法是什么?只使用静态变量来保持缓存可以吗 我们正在使用Oracle,而不是使用集群。大多数应用服务器和JPA实现都提供某种内置的缓存机制,用户可以控制这种机制。不必构建一个单体,研究实现您想要的东西的方法可能是值得的 单例和J2EE的一个主要问题是在集群环境中没有简单的方法来处理它们 综上所述,我确实找到了一个建议,为在JBo

我需要实现一个简单的DAOBean,它还缓存从数据库读取的数据。此DAOBean由无状态bean使用

因为EJB3.0不支持单例bean,那么实现这种DAOBean的正确方法是什么?只使用静态变量来保持缓存可以吗


我们正在使用Oracle,而不是使用集群。

大多数应用服务器和JPA实现都提供某种内置的缓存机制,用户可以控制这种机制。不必构建一个单体,研究实现您想要的东西的方法可能是值得的

单例和J2EE的一个主要问题是在集群环境中没有简单的方法来处理它们


综上所述,我确实找到了一个建议,为在JBoss下做你想做的事情提供了一些建议,并提到了EJB3.1的一个新的
@Singleton
注释,所以这可能是一种可能性。如果这对你有效,你应该写下你所做的,作为这个问题的另一个答案。

大多数应用服务器和JPA实现都提供某种内置的缓存机制,用户可以控制这种机制。不必构建一个单体,研究实现您想要的东西的方法可能是值得的

单例和J2EE的一个主要问题是在集群环境中没有简单的方法来处理它们


综上所述,我确实找到了一个建议,为在JBoss下做你想做的事情提供了一些建议,并提到了EJB3.1的一个新的
@Singleton
注释,所以这可能是一种可能性。如果这对您有效,您应该写下您所做的,作为这个问题的另一个答案。

如果您在Weblogic server上运行,那么实际上可以实现一个也支持集群的单例bean。不过,我不相信其他应用程序服务器上也存在此功能。

如果您在Weblogic server上运行,那么实际上可以实现同样支持集群的单例bean。不过,我不相信其他应用服务器上也存在此功能。

以跨appserver的方式实现此功能的“正确”方法是使用jmx mbean进行缓存行为。MBean是单例(每个应用服务器),可以执行线程和锁定等操作。当然,根据您使用的应用服务器的不同,mbean在实践中可能会或多或少地难以使用。

以跨应用服务器的方式实现这一点的“正确”方法是使用jmx mbean进行缓存行为。MBean是单例(每个应用服务器),可以执行线程和锁定等操作。当然,根据您使用的应用服务器的不同,MBean在实践中可能会或多或少地难以使用。

我们已经在使用EclipseLink缓存,但是我们有一些情况是不够的,我们必须手动实现cachingWe已经在使用EclipseLink缓存,但是,在一些情况下,这是不够的,我们必须手动实现缓存