Java操作Mongodb數(shù)據(jù)庫(kù)實(shí)現(xiàn)數(shù)據(jù)的增刪查改功能示例
本文實(shí)例講述了Java操作Mongodb數(shù)據(jù)庫(kù)實(shí)現(xiàn)數(shù)據(jù)的增刪查改功能。分享給大家供大家參考,具體如下:
首先,我們?cè)趙indows下安裝mongodb數(shù)據(jù)庫(kù),安裝教程可查看前面一篇文章: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;
}
}
附:完整實(shí)例代碼點(diǎn)擊此處本站下載。
更多關(guān)于java相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Java+MySQL數(shù)據(jù)庫(kù)程序設(shè)計(jì)總結(jié)》、《Java操作Excel技巧總結(jié)》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java文件與目錄操作技巧匯總》及《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
- Java操作MongoDB數(shù)據(jù)庫(kù)方法詳解
- Java操作MongoDB數(shù)據(jù)庫(kù)示例分享
- java實(shí)現(xiàn)mongodb的數(shù)據(jù)庫(kù)連接池
- Java的idea連接mongodb數(shù)據(jù)庫(kù)的詳細(xì)教程
- Java單例模式下的MongoDB數(shù)據(jù)庫(kù)操作工具類(lèi)
- 【MongoDB for Java】Java操作MongoDB數(shù)據(jù)庫(kù)
- Java操作MongoDB數(shù)據(jù)庫(kù)的示例代碼
- Java MongoDB數(shù)據(jù)庫(kù)連接方法梳理
- JAVA操作MongoDB數(shù)據(jù)庫(kù)實(shí)例教程
相關(guān)文章
詳解SpringBoot與SpringCloud的版本對(duì)應(yīng)詳細(xì)版
這篇文章主要介紹了詳解SpringBoot與SpringCloud的版本對(duì)應(yīng)詳細(xì)版,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
SpringCloud全面解析@FeignClient標(biāo)識(shí)接口的過(guò)程
這篇文章主要介紹了SpringCloud全面解析@FeignClient標(biāo)識(shí)接口的過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
SpringBoot 使用jwt進(jìn)行身份驗(yàn)證的方法示例
這篇文章主要介紹了SpringBoot 使用jwt進(jìn)行身份驗(yàn)證的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
Spring Boot實(shí)現(xiàn)郵件注冊(cè)功能示例代碼
本篇文章主要介紹了Spring Boot實(shí)現(xiàn)郵件注冊(cè)功能示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05
SpringBoot實(shí)現(xiàn)多個(gè)子域共享cookie的示例
本文主要介紹了SpringBoot實(shí)現(xiàn)多個(gè)子域共享cookie的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04

