如何在java应用服务器中使用MongoClient的一个实例

时间:2013-03-01 08:06:50

标签: java mongodb java-ee

根据mongodb java concurrency driver,我们可以为多个线程使用MongoClient的一个实例,例如在应用程序服务器内部。我知道这样做的唯一方法是在静态块中创建MongoClient

static {
    MongoClient mongoClient = new MongoClient("localhost", 27017);
}

问题是我无法捕获MongoException并向用户返回一些有用的信息。那么如何在Java EE应用服务器内的多个线程之间共享一个MongoClient实例呢?

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作之一:

  1. 创建服务类并在第一次请求时懒洋洋地启动mongo连接,在失败时显示错误
  2. 添加一个try catch并静态记住错误(我真的不喜欢这个!但比静态上下文中的异常失败更好)
  3. 使用spring初始化mongo(我的首选选项)