mongodb 2.6 java_mongoDB2.6,java使用详解

collectionNames = db.getCollectionNames();

for (String string : collectionNames) {

System.out.println(string);

}

DBCollection collection2 = db.getCollection("t_users2");

collection2 = db.getCollection("t_users2");

CarPasitionObj u = new CarPasitionObj();

u.setLa(1231d);

u.setLo(42342d);

u.setPn("京1aaa");

u.setTp(12);

String obj2Json = JsonUtils.getSingletonInstance().obj2Json(u);

BasicDBObject dbObject1=new BasicDBObject();

dbObject1.put("key", "123131");

dbObject1.put("value", obj2Json);

collection2.save(dbObject1);

BasicDBObject dbObject=new BasicDBObject();

dbObject.put("key", "123131");

DBCursor find = collection2.find(dbObject);

while (find.hasNext()) {

DBObject next = find.next();

String key = (String)next.get("key");

String json = (String)next.get("value");

System.out.println(key);

CarPasitionObj formJson = JsonUtils.getSingletonInstance().formJson(json, CarPasitionObj.class);

System.out.println(formJson.getPn());

}

} catch (UnknownHostException e) {

e.printStackTrace();

}

下面贴上我自己的mongodb的工具类:

/**

* Project Name:main

* File Name:MongodbCacheManagerUtil.java

* Package Name:com.hdsx.taxi.driver.cq.cache

* Date:2014年4月9日下午12:49:55

* Copyright (c) 2014, sid Jenkins All Rights Reserved.

*

*

*/

package com.hdsx.taxi.driver.cq.mongodb;

import java.net.UnknownHostException;

import java.util.ArrayList;

import java.util.List;

import org.apache.log4j.Logger;

import com.hdsx.taxi.driver.cq.module.InitServletModule;

import com.hdsx.taxi.driver.cq.tcp.util.JsonUtils;

import com.mongodb.BasicDBObject;

import com.mongodb.DB;

import com.mongodb.DBCollection;

import com.mongodb.DBCursor;

import com.mongodb.DBObject;

import com.mongodb.Mongo;

import com.mongodb.MongoClient;

/**

* ClassName:MongodbCacheManagerUtil

* Function: TODO ADD FUNCTION.

* Reason: TODO ADD REASON.

* Date: 2014年4月9日 下午12:49:55

* @author sid

* @see

*/

public class MongodbManagerUtil {

private static final Logger logger = Logger.getLogger(MongodbManagerUtil.class);

private Mongo mg = null;

private DB db = null;

private volatile static MongodbManagerUtil singleton = null;

public static final String KEY = "key";

public static final String VALUE = "value";

public static MongodbManagerUtil getSingletonInstance() {

if (singleton == null) {

synchronized (MongodbManagerUtil.class) {

if (singleton == null) {

singleton = new MongodbManagerUtil();

}

}

singleton = new MongodbManagerUtil();

}

return singleton;

}

private MongodbManagerUtil() {

if (logger.isDebugEnabled()) {

logger.debug("MongodbCacheManagerUtil() - start "); //$NON-NLS-1$

}

try {

mg = new MongoClient("192.168.186.129", 8888);

db = mg.getDB("mymongo");

} catch (UnknownHostException e) {

e.printStackTrace();

}

if (logger.isDebugEnabled()) {

logger.debug("MongodbCacheManagerUtil() - end"); //$NON-NLS-1$

}

}

/**

*

* getCache:(获取缓存对象).

*

* @author sid

* @param name

* @return

*/

public DBCollection getCache(String name){

return this.db.getCollection(name);

}

/**

*

* put:(在指定缓存对象中加入需要缓存的对象).

*

* @author sid

* @param cacheName

* @param key

* @param value

*/

public void put(String cacheName, String key, Object value) {

DBCollection cache = this.db.getCollection(cacheName);

String obj2Json = JsonUtils.getSingletonInstance().obj2Json(value);

BasicDBObject obj = new BasicDBObject();

obj.put(MongodbManagerUtil.KEY, key);

obj.put(MongodbManagerUtil.VALUE, obj2Json);

BasicDBObject basicDBObject = new BasicDBObject(MongodbManagerUtil.KEY, key);

int size = cache.find(basicDBObject).count();

if (size==0) {

cache.save(obj);

}else{

cache.update(basicDBObject, obj);

}

}

/**

*

* get:(根据key从指定缓存对象中获取对象).

*

* @author sid

* @param cacheName

* @param key

* @return

*/

public T get(String cacheName, String key, ClassclassOfT) {

DBCollection cache = this.db.getCollection(cacheName);

Listarray = cache.find(new BasicDBObject(MongodbManagerUtil.KEY, key)).toArray();

if (array == null||array.size()==0) {

return null;

}

DBObject dbObject = array.get(0);

String json = (String)dbObject.get(MongodbManagerUtil.VALUE);

return JsonUtils.getSingletonInstance().formJson(json, classOfT);

}

/**

*

* remove:(从指定缓存对象中清除对象).

*

* @author sid

* @param cacheName

* @param key

*/

public void remove(String cacheName, String key) {

DBCollection cache = this.db.getCollection(cacheName);

cache.remove(new BasicDBObject(MongodbManagerUtil.KEY,key));

}

/**

*

* getKeys:(获取keys列表).

*

* @author sid

* @param cacheName

* @return

*/

public ListgetKeys(String cacheName){

Listlist = new ArrayList();

DBCollection cache = this.db.getCollection(cacheName);

DBCursor find = cache.find();

while (find.hasNext()) {

DBObject next = find.next();

String key = (String) next.get(MongodbManagerUtil.KEY);

list.add(key);

}

return list;

}

/**

*

* containsKey:(判断消息是否存在).

*

* @author sid

* @param cacheName

* @param key

* @return

*/

public Boolean containsKey(String cacheName,String key){

DBCollection cache = this.db.getCollection(cacheName);

BasicDBObject basicDBObject = new BasicDBObject(MongodbManagerUtil.KEY, key);

int size = cache.find(basicDBObject).count();

if (size==0) {

return false;

}else{

return true;

}

}

}

除了save、insert、update;mongodb还有remove等操作

其中find方法可以指定查询条件:

大于等于:$gte

小于等于:$lte

不等于:$ne

demo:users.find(new BasicDBObject("age", new BasicDBObject("$gte", 24)))

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值