mongodb の Java データ型は次のとおりです。
オブジェクト ID 自動 ID
正規表現 正規表現検索レコード
日付/時刻 時刻
データベース参照 データ インフラストラクチャ
バイナリ データ バイナリ ストリーム
タイムスタンプ データのタイムスタンプスタンプ
コードデータ コードデータ
埋め込みドキュメント 埋め込みドキュメント
配列 配列型
詳細については、オリジナルの英語版 http://docs.mongodb.org/ecosystem/drivers/java-types/ を参照してください。
以下では、基本的な mongodb データ型をテストします。
次のようにコードをコピーします。
パッケージ com.javaer.mongo;
インポート java.net.UnknownHostException;
java.util.ArrayListをインポートします。
java.util.Dateをインポートします。
java.util.regex.Patternをインポートします。
org.bson.types.ObjectId をインポートします。
com.mongodb.BasicDBObject をインポートします。
com.mongodb.BasicDBObjectBuilder をインポートします。
com.mongodb.DB をインポートします。
com.mongodb.DBCollection をインポートします。
com.mongodb.DBCursor をインポートします。
com.mongodb.DBObject をインポートします。
com.mongodb.DBRef をインポートします。
com.mongodb.Mongo をインポートします。
パブリック クラス JavaTypes {
/**
* @param 引数
* @throws UnknownHostException
*/
public static void main(String[] args) throws UnknownHostException {
// 基本 ID、503991d90364b431cdc798e2 のような構造を自動的に追加します
オブジェクト ID ID = 新しい ObjectId();
System.out.println(id);
id = 新しいオブジェクト ID();
System.out.println(id);
//5039924c0364f4a124555e42
// 5039924c0364f4a124555e43 継続使用、自動増加、それ以外はランダム生成
Mongo m = new Mongo();
DB db = m.getDB("yuexiaosheng");
DBCollection coll = db.getCollection("mycollection");
//標準ライブラリの正規表現を使用して、データ内のレコードを検索します。 mysql のタイトルが '%name%' のような条件に似ています
パターン john = Pattern.compile(".*?jack*.?",Pattern.CASE_INSENSITIVE);
BasicDBObject クエリ = new BasicDBObject("title", john);
DBCursor カーソル = coll.find(query);
試す {
while(cursor.hasNext()) {
System.out.println(cursor.next());
}
} ついに {
カーソル.クローズ();
}
//mongodbの時刻型
現在の日付 = new Date();
BasicDBObject time = new BasicDBObject("ts", now);
coll.save(時間);
//挿入されたレコード { "_id" : ObjectId("503993b20364129f6625d349"), "ts" : ISODate("2012-08-26T03:10:42.146Z") }
//mongodbの配列構造。
ArrayList x = 新しい ArrayList();
x.add(1);
x.add(2);
x.add(new BasicDBObject("foo", "bar"));
x.add(4);
BasicDBObject doc = new BasicDBObject("x", x);
coll.save(doc);
//挿入されたレコード { "_id" : ObjectId("503994500364bf9957b271a6"), "x" : [ 1, 2, { "foo" : "bar" }, 4 ] }
//mongodb データ構造データをデータベースに保存します
DBRef addressRef = new DBRef(db, "foo.bar", id);
DBObject アドレス = addressRef.fetch();
DBObject person = BasicDBObjectBuilder.start()
.add("名前", "フレッド")
.add("アドレス", addressRef)
。得る();
coll.save(人);
//挿入されたデータレコード
//{ "_id" : ObjectId("503995390364fcf1b54905b2"), "name" : "Fred", "address" : { "$ref" : "foo.bar", "$id" : ObjectId("503995390364fcf1b54905af") } }
DBObject fred = coll.findOne();
DBRef addressObj = (DBRef)fred.get("アドレス");
System.out.println(addressObj);
// { "$ref" : "foo.bar", "$id" : "5039965c03648efcd6281311
}
}