Кода -копия выглядит следующим образом:
Пакет Mymaven;
Импорт java.net.unknownhostexception;
импортировать java.util.set;
импорт com.mongodb.basicdbobject;
Импорт com.mongodb.db;
Импорт com.mongodb.dbcollection;
Импорт com.mongodb.dbcursor;
Импорт com.mongodb.dbobject;
Импорт com.mongodb.mongo;
Импорт com.mongodb.mongoException;
открытый тест класса {
Public Static void Main (String [] args) бросает неизвестное хостекцепция, MongoException {
Mongo mongo = new Mongo ("172.27.9.104", 27017);
Db db = mongo.getdb ("mytestdb");
SET <String> cols = db.getCollectionNames ();
// распечатать коллекцию в базе данных, здесь она должна быть нулевой
для (String S: Cols) {
System.out.println (s);
}
DBCollection Collection = db.getCollection ("MyTestColl");
collection.drop ();
BasicDbobject obj = new BasicDBobject ();
obj.put ("from", "blog.ihomer.net");
obj.put ("to", "forum.ithomer.net");
obj.put ("субъект", "ithomer.net");
Collection.insert (obj);
Dbobject dbobj = collection.findone ();
System.out.println (dbobj);
// Вставка 10 {Ранки: I} Данные
для (int i = 0; i <10; i ++) {
collection.insert (new basicdbobject (). Append («Рейтинг», i));
}
System.out.println ("count:" + collection.getCount ());
Dbcursor cursor = collection.find ();
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// Простой условный запрос, записи запросов с рейтингом 1
Basicdbobject Query = new BasicDBobject ();
Query.put («Рейтинг», 1);
cursor = collection.find (Query);
System.out.println ("Коллекция Find ({/" Ranking/": 1}):");
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// Сложный условный запрос, записи запросов с рейтингом, превышающим или равны 5 и менее 9
Query = new BasicDBobject ();
Query.put («Рейтинг», New BasicDbobject ("$ gte", 5) .append ("$ lt", 9));
cursor = collection.find (Query);
System.out.println ("Коллекция Find ({/" Ranking/": [5-9)}):");
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// mongo.dropdatabase ("mytestdb");
}
}
Результаты работы:
Кода -копия выглядит следующим образом:
mytestcoll
System.indexes
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10107"}, "от": "blog.ihomer.net", "to": "forum.ihomer.net", "subject": "ihomer.net"}
Подсчет: 11
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10107"}, "от": "blog.ihomer.net", "to": "forum.ihomer.net", "subject": "ihomer.net"}
{"_ID": {"$ OID": "52C62ED8E4B0F4DE3DD10108"}, "Ранки": 0}
{"_id": {"$ OID": "52C62ED8E4B0F4DE3DD10109"}, "Ранки": 1}
{"_id": {"$ OID": "52C62ED8E4B0F4DE3DD1010A"}, "Ранки": 2}
{"_id": {"$ OID": "52C62ED8E4B0F4DE3DD1010B"}, "Ранки": 3}
{"_ID": {"$ OID": "52C62ED8E4B0F4DE3DD1010C"}, "Ранки": 4}
{"_ID": {"$ OID": "52C62ED8E4B0F4DE3DD1010D"}, "Ранки": 5}
{"_id": {"$ OID": "52C62ED8E4B0F4DE3DD1010E"}, "Ранки": 6}
{"_ID": {"$ OID": "52C62ED8E4B0F4DE3DD1010F"}, "Ранки": 7}
{"_id": {"$ OID": "52C62ED8E4B0F4DE3DD10110"}, "Ранки": 8}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10111"}, "Ранки": 9}
Коллекция Find ({"Рейкинг": 1}):
{"_id": {"$ OID": "52C62ED8E4B0F4DE3DD10109"}, "Ранки": 1}
Коллекция Find ({"Рейкинг": [5-9)}):
{"_ID": {"$ OID": "52C62ED8E4B0F4DE3DD1010D"}, "Ранки": 5}
{"_id": {"$ OID": "52C62ED8E4B0F4DE3DD1010E"}, "Ранки": 6}
{"_ID": {"$ OID": "52C62ED8E4B0F4DE3DD1010F"}, "Ранки": 7}
{"_id": {"$ OID": "52C62ED8E4B0F4DE3DD10110"}, "Ранки": 8}
Пример массива MongoDB:
Кода -копия выглядит следующим образом:
@Suppresswarnings ("не контролировано")
public static void LoadMediatags (список <mediaentity> mediaentitylist) {
MediaEntityList.clear ();
пытаться {
Mongo mongo = new mongo (cosinecluster.gmongo_host, cosinecluster.gmongo_port);
Db db = mongo.getdb (cosinecluster.gmongo_db);
Dbcollection collection = db.getCollection (cosinecluster.gmongo_coll_media);
Dbcursor cursor = collection.find ();
int index = 0;
long starttime = System.currentTimeMillis ();
while (cursor.hasnext ()) {
Basicdbobject obj = (basicdbobject) cursor.next ();
long id = obj.getlong ("_ id");
ArrayList <stry> Taglist = (arraylist <string>) obj.get ("Tag"); // Tag
Arraylist <string> keywordlist = (arraylist <string>) obj.get ("Keyword"); // Ключевое слово
ArrayList <Integer> copyrightlist = (ArrayList <Integer>) obj.get ("Copyright"); // Copyright
MediaEntity MediaEntity = New MediaEntity ();
mediaEntity.setid (id);
// ярлык
for (int j = 0; j <taglist.size (); j ++) {
mediaentity.addtag (Taglist.get (j));
int tagid = getTagint (Taglist.get (j));
MediaEntity.Addtag (TAGID);
}
// актеры
ArrayList <dbobject> actorsobjlist = (arraylist <dbobject>) obj.get ("Actors"); // Актеры
for (int j = 0; j <actorsobjlist.size (); j ++) {
mediaentity.addactor ((String) actorsobjlist.get (j) .get ("name"));
int actorid = getActorint ((string) actorsObjlist.get (j) .get ("name"));
MediaEntity.Addactor (Actorid);
}
// директор
Arraylist <dbobject> directorObjlist = (arraylist <dbobject>) obj.get ("Директор"); // Режиссер
for (int j = 0; j <directorobjlist.size (); j ++) {
mediaentity.adddirector ((String) DirectorObjlist.get (j) .get ("name"));
int RecientId = getDirectorint ((String) DirectorObjList.get (j) .get ("name"));
MediaEntity.adddirector (DirectorId);
}
// ключевое слово
for (int j = 0; j <keywordlist.size (); j ++) {
mediaentity.addkeword (KeyWordList.get (j));
int keyword = getKeyWordInt (KeyWordList.get (j));
mediaentity.addkeyword (KeyWordID);
}
// авторское право
for (int j = 0; j <copyrightlist.size (); j ++) {
mediaentity.addcopyright (copyrightlist.get (j));
}
MediaEntityList.Add (MediaEntity);
index ++;
if (index> 100) {
перерыв;
}
System.out.println (index + "--- mediaentity:" + mediaentity.tostring ());
}
LongStime = System.CurrentTimeMillis () - StartTime;
System.out.println ("загрузка данных oplime =" + index + "; opltime =" + opltime/1000f);
} catch (Exception e) {
e.printstacktrace ();
}
}
public static int getTagint (String Tag) {
int tagintid = -1;
пытаться {
Mongoclient mongo = new Mongoclient (cosinecluster.gmongo_host, cosinecluster.gmongo_port);
Db db = mongo.getdb (cosinecluster.gmongo_db);
Dbcollection tagmapcollection = db.getCollection ("recule_tag_map");
Dbcursor cursor = tagmapcollection.find (new basicdbobject ("name", Tag));
if (cursor == null || cursor.toarray (). size () <= 0) {// Сопоставление обработки ключевые слова менее 2 или N, то же самое ниже
вернуть Тагинтид;
}
Dbobject obj = coursor.toarray (). Get (0);
String name = Tag;
tagintid = (integer) obj.get ("id");
int num = (integer) obj.get ("num");
mongo.close ();
} catch (Unknownhostexception e) {
e.printstacktrace ();
}
вернуть Тагинтид;
}
public static int getactorint (string actor) {
int actorintid = -1;
пытаться {
Mongoclient mongo = new Mongoclient (cosinecluster.gmongo_host, cosinecluster.gmongo_port);
Db db = mongo.getdb (cosinecluster.gmongo_db);
Dbcollection tagmapcollection = db.getCollection ("recule_actor_map");
Dbcursor cursor = tagmapcollection.find (new basicdbobject ("name", actor));
if (cursor == null || cursor.toarray (). size () <= 0) {
вернуть аксинтид;
}
Dbobject obj = coursor.toarray (). Get (0);
String name = actor;
actorintid = (целое число) obj.get ("id");
int num = (integer) obj.get ("num");
mongo.close ();
} catch (Unknownhostexception e) {
e.printstacktrace ();
}
вернуть аксинтид;
}