在Java EE环境中保持连接活动和可用的最佳方法

时间:2012-03-01 10:22:15

标签: java-ee singleton ejb design-patterns

我有连接到MS Exchange服务器的Web服务客户端。该系统的初始连接时间非常长,大约30秒。因此,我想在启动应用程序服务器后立即打开此初始连接,然后让无状态ejbs使用此连接,而无需重新连接到MS Exchange服务器。我的解决方案是创建一个单独的EJB,它被注入到无状态ejb中,这样我的连接总是打开的,但是我不确定这是否会起作用,因为看起来单独的EJB可以收集垃圾。

所以我的问题是:这是正确的方法吗?或者我应该使用不同的方法解决这个“服务提供商”问题?如果它的正确那么单身的垃圾收集怎么样,可以避免,所以我不时不需要做重新连接?感谢您的任何反馈和想法!

1 个答案:

答案 0 :(得分:0)

如果您对与Exchange服务器的单个连接感到满意,请将连接存储在静态变量中。将它包装在一个通过getter提供连接的类中,该类也会在返回连接之前检查并自动重新连接。