Java操作Mongodb數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)的增刪查改功能示例
本文實例講述了Java操作Mongodb數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)的增刪查改功能。分享給大家供大家參考,具體如下:
首先,我們在windows下安裝mongodb數(shù)據(jù)庫,安裝教程可查看前面一篇文章:http://chabaoo.cn/article/85605.htm
代碼如下:
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("刪除數(shù)據(jù)成功!"); 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("插入數(shù)據(jù)成功!"); 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("數(shù)據(jù)更新成功!"); return true; }else return false; } }
附:完整實例代碼點擊此處本站下載。
更多關(guān)于java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java+MySQL數(shù)據(jù)庫程序設(shè)計總結(jié)》、《Java操作Excel技巧總結(jié)》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java文件與目錄操作技巧匯總》及《Java操作DOM節(jié)點技巧總結(jié)》
希望本文所述對大家java程序設(shè)計有所幫助。
相關(guān)文章
詳解SpringBoot與SpringCloud的版本對應(yīng)詳細版
這篇文章主要介紹了詳解SpringBoot與SpringCloud的版本對應(yīng)詳細版,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09SpringCloud全面解析@FeignClient標(biāo)識接口的過程
這篇文章主要介紹了SpringCloud全面解析@FeignClient標(biāo)識接口的過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03SpringBoot實現(xiàn)多個子域共享cookie的示例
本文主要介紹了SpringBoot實現(xiàn)多個子域共享cookie的示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04