java实现mongodb的连接池
来源:互联网 发布:国外域名注册 知乎 编辑:程序博客网 时间:2024/06/10 02:24
mongodb java驱动包下载(百度云盘:http://pan.baidu.com/s/1i4aRfzZ 分享密码:wc61)
引入jar包
1.mongodb连接配置参数
2.mongodb连接池管理管理类
package com.znie.mypro.mongodb;import java.util.ArrayList;import java.util.List;import java.util.Locale;import java.util.ResourceBundle;import com.mongodb.MongoClient;import com.mongodb.MongoClientOptions;import com.mongodb.MongoCredential;import com.mongodb.ServerAddress;import com.mongodb.client.MongoDatabase;/** * mongodb连接池管理类 * @author znie * */public class MongoManager {// 配置文件private ResourceBundle mongoProperties = ResourceBundle.getBundle("mongo",Locale.getDefault());private final static MongoManager instance = new MongoManager();private static MongoClient mg = null;private static MongoDatabase mongoDatabase;public static MongoManager getInstance() {return instance;}public static MongoDatabase getMongoDatabase() {return mongoDatabase;}public static void setMongoDatabase(MongoDatabase mongoDatabase) {MongoManager.mongoDatabase = mongoDatabase;}public MongoManager() {//System.out.println(mongoDatabase.getName());// 链接池数量String connectionsPerHost = mongoProperties.getString("connectionsPerHost");// 最大等待时间String maxWaitTime = mongoProperties.getString("maxWaitTime");// scoket超时时间String socketTimeout = mongoProperties.getString("socketTimeout");// 设置连接池最长生命时间String maxConnectionLifeTime = mongoProperties.getString("maxConnectionLifeTime");// 连接超时时间String connectTimeout = mongoProperties.getString("connectTimeout");MongoClientOptions options = MongoClientOptions.builder().connectionsPerHost(Integer.parseInt(connectionsPerHost)).maxWaitTime(Integer.parseInt(maxWaitTime)).socketTimeout(Integer.parseInt(socketTimeout)).maxConnectionLifeTime(Integer.parseInt(maxConnectionLifeTime)).connectTimeout(Integer.parseInt(connectTimeout)).build();String hostLen = mongoProperties.getString("len");//所有主机List<ServerAddress> hosts = new ArrayList<ServerAddress>();for (int i = 1; i <= Integer.parseInt(hostLen); i++) {String host = mongoProperties.getString("host" + i);// String port = mongoProperties.getString("port"+i);hosts.add(new ServerAddress(host));}List<MongoCredential> credentials = new ArrayList<MongoCredential>();if (mongoProperties.getString("authentication").equals("1")) {// 需要验证MongoCredential credential = MongoCredential.createCredential(mongoProperties.getString("userName"), mongoProperties.getString("adminDb"),mongoProperties.getString("pwd").toCharArray());credentials.add(credential);}mg = new MongoClient(hosts, credentials, options);mongoDatabase = mg.getDatabase(mongoProperties.getString("dbname"));}}
两个API
MongoClientOptions API
MongoClientOptions.Builder
1 0
- java实现mongodb的连接池
- MongoDB Java 连接池的注意事项
- java 实现操作mongodb的连接,增删查改
- 基于java实现mongodb的数据库连接池
- Java中使用MongoDB连接池的注意事项
- 实现MongoDB与Hadoop的连接
- C++连接MongoDB的接口实现
- [ mongoDB ] - MongoDB 连接池
- [ mongoDB ] - MongoDB 连接池
- mongoDB的连接池问题
- java连接池的实现
- Mongodb的安装以及Java连接Mongodb初探
- java实现mongodb的dbutils
- java连接虚拟机里面的MongoDB出错
- java中mongoDB连接遇到的问题
- mongodb 实现远程连接
- mongodb实现远程连接
- java操作mongodb(连接池)
- 移动端返回顶部右下角按钮代码
- openvpn设置不加密传输
- nutch入门之本地安装运行
- unity3d 技能编辑器
- 轻量级多线程网络爬虫
- java实现mongodb的连接池
- C#获取josn串中某个对象的值
- GL Rollup Group - 累计组设置和使用
- 【ASP.NET】利用.ashx、Ajax、Session优化Repeater的使用
- 搭建swt/jface开发环境【转】
- 面向对象(隐藏和封装)
- hint 索引示例
- Oracle的管道函数(Pipelined)为实际工作中的商业应用提供高效的数据解决方案
- zendstudio中加SVN快捷键