设为首页 加入收藏

TOP

NoSql之MongoDB实现数据库数据操作(一)
2014-11-24 08:11:47 来源: 作者: 【 】 浏览:8
Tags:NoSql MongoDB 实现 数据库数据 操作
NoSql之MongoDB实现 数据库数据操作
1、创建唯一数据库实例DB www.2cto.com
[java]
package com.boonya.mongo;
import java.net.UnknownHostException;
import java.util.Arrays;
import com.mongodb.DB;
import com.mongodb.MongoClient;
import com.mongodb.ServerAddress;
public class DBConnection {
private DBConnection(){}
private static String userName="boonya";
private static char [] password="boonya".toCharArray();
private static DB db=null;
/**
* mongoClient = new MongoClient();
* // or
* mongoClient = new MongoClient( "localhost" );
* // or
* mongoClient = new MongoClient( "localhost" , 27017 );
* // or, to connect to a replica set, supply a seed list of members
* @return
*/
public synchronized static DB getInstance(){
if(db==null){
MongoClient mongoClient=null;
try {
mongoClient = new MongoClient(Arrays.asList(new ServerAddress("localhost", 27017),
new ServerAddress("localhost", 27018),
new ServerAddress("localhost", 27019)));
} catch (UnknownHostException e) {
e.printStackTrace();
}
db = mongoClient.getDB("mydb");
boolean auth = db.authenticate(userName,password);
if(!auth){ //the authentication is invalid
return null;
}
}
return db;
}
}
2、创建CRUD操作工具类
[java]
package com.boonya.mongo.optimize;
import java.net.UnknownHostException;
import com.boonya.mongo.utils.ConstantUtils;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.Mongo;
import com.mongodb.MongoException;
import com.mongodb.MongoOptions;
public class MongDbCRUD {
private static Mongo mongo = null;
private static DB db;
private static DBCollection table;
private static MongDbCRUD instace;
public static synchronized MongDbCRUD getInstance(){
if(instace==null||mongo==null||db==null||table==null){
instace = new MongDbCRUD();
}
return instace;
}
public MongDbCRUD(){
String host = ConstantUtils.getValue("mongo.host").toString();
int port = Integer.parseInt(ConstantUtils.getValue("mongo.port").toString());
String datablease = ConstantUtils.getValue("mongo.datablease").toString();
String tablelename = ConstantUtils.getValue("mongo.table.bound").toString();
try {
mongo = new Mongo(host, port);
// 连接池
MongoOptions opt = mongo.getMongoOptions();
opt.connectionsPerHost = 10 ; //poolsize
opt.threadsAllowedToBlockForConnectionMultiplier = 10 ;
//获取temp DB;如果默认没有创建,mongodb会自动创建
db = mongo.getDB(datablease);
//获取users DBCollection;如果默认没有创建,mongodb会自动创建
table = db.getCollection(tablelename);
//DO SOMETHING
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (M
首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇重新注册PostgreSQL服务 下一篇Magento 1.5版本,导出order详细..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C/C++ 类模板与模板 (2025-12-27 01:49:52)
·C语言 模板化<templ (2025-12-27 01:49:49)
·C/C++模板类模板与函 (2025-12-27 01:49:46)
·如何理解c语言指针和 (2025-12-27 01:19:11)
·为什么C标准库没有链 (2025-12-27 01:19:08)