1. 程式人生 > >java操作Mogodb資料庫,對資料庫進行增刪查改!

java操作Mogodb資料庫,對資料庫進行增刪查改!

首先,我們在windows下安裝mongodb資料庫,安裝教程檢視上一篇文章:

程式碼如下:

package io.mogo;

import java.util.Map;

import org.apache.commons.lang3.StringUtils;

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.WriteResult;

/**
 * Hello world!
 *
 */
public class App 
{
	private static final String host = "localhost";  
	private static final int port = 27017;  
	private static final String userName = "";  
	private static final String password = "";  
	private static final String dataBaseName = "test";  
	private static DB db;
	
    public static void main( String[] args ) throws Exception
    {
        System.out.println( "Hello World!" );
        connMongoDB();
        

        find("person", "name", "xiaoming");
        
        DBObject newObj = new BasicDBObject();
        newObj.put("name", "xiaoming");
        newObj.put("desc", "i am xiaoming");
        
        update("person", "name", "xiaoming", newObj);
        find("person", "name", "xiaoming");
    }
    public static void connMongoDB() throws Exception {  
        Mongo mongo = new Mongo(host, port);  
        db = mongo.getDB(dataBaseName);  
        if (!StringUtils.isEmpty(userName) || !StringUtils.isEmpty(password)) {  
            db.authenticate(userName, password.toCharArray());  
        }
    }  
    
    public static void find(String tableName, String key, String value){
     DBObject obj = new BasicDBObject(); 
     obj.put(key, value);
	 DBCollection dbCollection = db.getCollection(tableName);  
	 DBCursor dbCursor = dbCollection.find(obj);
	 while(dbCursor.hasNext()){  
	     Map map = (Map)dbCursor.next();  
	     System.out.println(map);  
	 }  
    }
    
    public static boolean delete(String tableName, String key, String value){
        DBObject obj = new BasicDBObject(); 
        obj.put(key, value);
        DBCollection dbCollection = db.getCollection(tableName);  
        WriteResult result = dbCollection.remove(obj);
        if(result.getN() > 0){
        	System.out.println("刪除資料成功!");
        	return true;
        }else{
        	return false;
        }
    }
    
    public static boolean insert(String tableName, DBObject obj){
        DBCollection dbCollection = db.getCollection(tableName);  
        long num = dbCollection.count();
        dbCollection.insert(obj);
        if(dbCollection.count() - num > 0){
        	System.out.println("插入資料成功!");
        	return true;
        }else{
        	return false;
        }
    }
    
    public static boolean update(String tableName, String key, String value, DBObject newValue){
        DBObject obj = new BasicDBObject(); 
        obj.put(key, value);
        DBCollection dbCollection = db.getCollection(tableName);  
        DBObject oldValue = dbCollection.findOne(obj);
        WriteResult result = dbCollection.update(oldValue, newValue);
        if(result.getN() > 0){
        	System.out.println("資料更新成功!");
        	return true;
        }else
        	return false;
    }
}

mogoDB之jar包下載地址:https://pan.baidu.com/s/1mit6M4S