详解MongoDB Java 连接应该注意的问题

零下一度
零下一度 原创
2017-05-26 14:16:22 1537浏览

内部实现了一个连接池。Mongo对象是线程安全的,因此可以只创建一个,在多线程环境下安全使用。因此,我们可以用将Mongo变量作为

1.Mongo对象

内部实现了一个连接池。Mongo对象是线程安全的,因此可以只创建一个,在多线程环境下安全使用。因此,我们可以用将Mongo变量作为一个Singleton类的成员变量,从而保证只创建一个连接池。Mongo.close方法将关闭当前所有活跃的连接。所以要在web工程被从Tomcat或者GlassFish容器中注销的时候确保调用close方法。

2.DB对象

DB对象可以通过Mongo.get方法获得,代表了和数据库的一个连接。默认情况下,当执行完数据库的查询或者更新操作后,连接将自动回到连接池中。不需要我们手动调用代码放回池中。至于如何实现,,我猜测是update,query,save方法内部有finally块,那里面有还连接到池中的代码。

3.手动还连接入池

DB对象也允许在一个连接上执行多个操作

requestStart 会让自动还连接入池失效,因此必须确保requestDone一定能够被调用。这里应该用finally块会更严密一些。

实现了Lazy loading的Singleton模式,里面的成员变量Mongo mongo因此只会实例化一次。注意连接池大小和重连设置。

【相关推荐】

1. 分享Java连接MongoDB进行增删改查的实例教程

2. MongoDB(六)java操作mongodb增删改查

3. 分享利用Spring Boot开发Restful程序的实例教程

4. 详解spring中使用Elasticsearch的实例教程

以上就是详解MongoDB Java 连接应该注意的问题的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。