日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

mongodb java set_MongoDB Java常用操作

發(fā)布時(shí)間:2023/12/19 java 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mongodb java set_MongoDB Java常用操作 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

請先下載下列jar包:

mongo-java-driver-*.jar,junit*.jar,gson-*.jar

import?java.net.UnknownHostException;

import?java.util.Calendar;

import?java.util.Date;

import?java.util.HashMap;

import?java.util.HashSet;

import?java.util.Map;

import?java.util.Set;

import?com.google.gson.Gson;

import?com.mongodb.BasicDBObject;

import?com.mongodb.Bytes;

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.util.JSON;

public?class?Test?{

@org.junit.Test

public?void?testCRUD()?throws?UnknownHostException,?MongoException?{

//創(chuàng)建數(shù)據(jù)庫連接

Mongo?mongo?=?new?Mongo("localhost",?27017);

for?(String?dbname?:?mongo.getDatabaseNames())?{

System.out.println("dbname=="?+?dbname);

}

//打開DB

DB?db?=?mongo.getDB("mongodbtest");

//遍歷所有集合名字

Set?colls?=?db.getCollectionNames();

for?(String?string?:?colls)?{

System.out.println(string);

//先刪除所有collection

if?(!string.equals("system.indexes"))?{

db.getCollection(string).drop();

}

}

//取得集合emp(若:emp不存在,mongodb將自動創(chuàng)建該集合)

DBCollection?coll?=?db.getCollection("emp");

//delete?all

DBCursor?dbCursor?=?coll.find().addOption(Bytes.QUERYOPTION_NOTIMEOUT);//設(shè)置不超時(shí)

for?(DBObject?dbObject?:?dbCursor)?{

coll.remove(dbObject);

}

//create

BasicDBObject?doc?=?new?BasicDBObject("name",?"test").append("sex",?"test").append(

"address",

new?BasicDBObject("postcode",?"aaaa").append("street",?"test")

.append("city",?"test2"));

coll.insert(doc);

//retrieve

BasicDBObject?docFind?=?new?BasicDBObject("name",?"test");

DBObject?finResult?=?(DBObject)?coll.findOne(docFind);

System.out.println(finResult);

//update

doc.put("sex",?"MALE");

coll.update(finResult,?doc);

finResult?=?coll.findOne(docFind);

System.out.println(finResult);

//刪除所有index

coll.dropIndexes();

//創(chuàng)建index

coll.createIndex(new?BasicDBObject("name",?1));//1代表升序

//復(fù)雜對象

UserData?userData?=?new?UserData("jimmy",?"123456");

Set?pets?=?new?HashSet();

pets.add("cat");

pets.add("dog");

Map?favoriteMovies?=?new?HashMap();

favoriteMovies.put("dragons",?"Dragons?II");

favoriteMovies.put("avator",?"Avator?I");

userData.setFavoriteMovies(favoriteMovies);

userData.setPets(pets);

userData.setBirthday(getDate(1990,?5,?1));

BasicDBObject?objUser?=?new?BasicDBObject("key",?"jimmy").append("value",

toDBObject(userData));

coll.insert(objUser);

System.out.println(coll.findOne(objUser));

mongo.close();

mongo?=?null;

db?=?null;

coll?=?null;

doc?=?null;

dbCursor?=?null;

System.gc();

}

private?DBObject?toDBObject(Object?obj)?{

Gson?gson?=?new?Gson();

String?json?=?gson.toJson(obj);

return?(DBObject)?JSON.parse(json);

}

private?Date?getDate(int?year,?int?month,?int?day)?{

Calendar?calendar?=?Calendar.getInstance();

calendar.clear();

calendar.set(year,?month?-?1,?day);

return?calendar.getTime();

}

}

public?class?UserData?implements?Serializable?{

private?static?final?long???serialVersionUID?=?-1458264368996911555L;

private?String??????????????userName;

private?String??????????????password;

private?Set?????????pets;

private?Map?favoriteMovies;

private?Date????????????????birthday;

public?UserData(String?userName,?String?passWord)?{

this.userName?=?userName;

this.password?=?passWord;

}

public?String?getUserName()?{

return?userName;

}

public?void?setUserName(String?userName)?{

this.userName?=?userName;

}

public?String?getPassword()?{

return?password;

}

public?void?setPassword(String?password)?{

this.password?=?password;

}

public?Set?getPets()?{

return?pets;

}

public?void?setPets(Set?pets)?{

this.pets?=?pets;

}

public?Map?getFavoriteMovies()?{

return?favoriteMovies;

}

public?void?setFavoriteMovies(Map?favoriteMovies)?{

this.favoriteMovies?=?favoriteMovies;

}

public?Date?getBirthday()?{

return?birthday;

}

public?void?setBirthday(Date?birthday)?{

this.birthday?=?birthday;

}

}

emp

system.indexes

{?"_id"?:?{?"$oid"?:?"56696b6e40ad7fee67b4343b"}?,?"name"?:?"test"?,?"sex"?:?"test"?,?"address"?:?{?"postcode"?:?"aaaa"?,?"street"?:?"test"?,?"city"?:?"test2"}}

{?"_id"?:?{?"$oid"?:?"56696b6e40ad7fee67b4343b"}?,?"name"?:?"test"?,?"sex"?:?"MALE"?,?"address"?:?{?"postcode"?:?"aaaa"?,?"street"?:?"test"?,?"city"?:?"test2"}}

{?"_id"?:?{?"$oid"?:?"56696b6e40ad7fee67b4343c"}?,?"key"?:?"jimmy"?,?"value"?:?{?"userName"?:?"jimmy"?,?"password"?:?"123456"?,?"pets"?:?[?"cat"?,?"dog"]?,?"favoriteMovies"?:?{?"dragons"?:?"Dragons?II"?,?"avator"?:?"Avator?I"}?,?"birthday"?:?"May?1,?1990?12:00:00?AM"}}

總結(jié)

以上是生活随笔為你收集整理的mongodb java set_MongoDB Java常用操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。