La copia del código es la siguiente:
paquete mymaven;
import java.net.unknownHosTexception;
import java.util.set;
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.MongoException;
Prueba de clase pública {
Public static void main (string [] args) lanza desconocidohostexception, mongoException {
Mongo Mongo = nuevo Mongo ("172.27.9.104", 27017);
Db db = mongo.getdb ("mytestdb");
Establecer <String> cols = db.getCollectionNames ();
// Imprima la colección en la base de datos, aquí debería ser nula
para (cadena s: cols) {
System.out.println (s);
}
DBCollection Collection = db.getCollection ("myTestColl");
colección.drop ();
BasicDBObject obj = new BasicDBObject ();
obj.put ("from", "blog.ihomer.net");
obj.put ("a", "foro.ithomer.net");
obj.put ("sujeto", "ithomer.net");
colección.insert (obj);
Dbobject dbobj = colección.findone ();
System.out.println (dbobj);
// insertar 10 {clasificación: i} datos
para (int i = 0; i <10; i ++) {
colección.insert (new BasicDBObject (). Append ("Ranking", i));
}
System.out.println ("Count:" + Collection.getCount ());
Dbcursor cursor = colección.find ();
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// consultas condicionales simples, registros de consulta con clasificación de 1
BasicDBobject Query = new BasicDBObject ();
query.put ("Ranking", 1);
cursor = colección.find (consulta);
System.out.println ("Collection Find ({/" Ranking/": 1}):");
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// Consulta condicional compleja, registros de consulta con clasificación mayor o igual a 5 y menos de 9
Query = new BasicDBObject ();
Query.put ("Ranking", nuevo BasicDBObject ("$ GTE", 5) .Append ("$ lt", 9));
cursor = colección.find (consulta);
System.out.println ("Collection Find ({/" Ranking/": [5-9)}):");
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// mongo.dropdatabase ("mytestdb");
}
}
Resultados de ejecución:
La copia del código es la siguiente:
mytestcoll
System.dexes
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10107"}, "de": "Blog.ihomer.net", "a": "foro.ihomer.net", "asunto": "ihomer.net"}
Conde: 11
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10107"}, "de": "Blog.ihomer.net", "a": "foro.ihomer.net", "asunto": "ihomer.net"}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10108"}, "ranking": 0}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10109"}, "ranking": 1}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010a"}, "ranking": 2}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010b"}, "ranking": 3}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010c"}, "ranking": 4}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010d"}, "ranking": 5}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010e"}, "ranking": 6}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010f"}, "ranking": 7}
{"_id": {"$ oid": "52C62ED8E4B0F4DE3DD10110"}, "Ranking": 8}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10111"}, "ranking": 9}
Colección Find ({"Ranking": 1}):
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10109"}, "ranking": 1}
Colección Find ({"Ranking": [5-9)}):
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010d"}, "ranking": 5}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010e"}, "ranking": 6}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010f"}, "ranking": 7}
{"_id": {"$ oid": "52C62ED8E4B0F4DE3DD10110"}, "Ranking": 8}
Ejemplo de matriz MongoDB:
La copia del código es la siguiente:
@SupessWarnings ("sin control")
Public static void LoadMediatags (List <MediaEntity> MediaEntityList) {
MediaEntityList.Clear ();
intentar {
Mongo Mongo = new Mongo (cosineecluster.gmongo_host, cosineecluster.gmongo_port);
Db db = mongo.getdb (cosineecluster.gmongo_db);
DBCollection Collection = db.getCollection (cosineCluster.gmongo_coll_media);
Dbcursor cursor = colección.find ();
int index = 0;
Long Starttime = System.CurrentTimemillis ();
while (cursor.hasnext ()) {
BasicDBobject obj = (BasicDBobject) cursor.next ();
long id = obj.getLong ("_ id");
ArrayList <String> tagList = (ArrayList <String>) obj.get ("etiqueta"); // etiqueta
ArrayList <String> KeywordList = (ArrayList <String>) obj.get ("Palabra clave"); // Palabra clave
ArrayList <Integer> CopyrightList = (ArrayList <Integer>) obj.get ("Copyright"); // Copyright
MediaEntity MediaEntity = New MediaEntity ();
MediaEntity.SetId (id);
// etiqueta
para (int j = 0; j <taglist.size (); j ++) {
MediaEntity.Addtag (taglist.get (j));
int tagid = getTagint (tagList.get (j));
MediaEntity.Addtag (Tagid);
}
// actores
ArrayList <DBObject> actorsObJList = (ArrayList <DBObject>) obj.get ("actores"); // actores
para (int j = 0; j <actorsobjlist.size (); j ++) {
MediaEntity.Addactor ((String) ActorSobjList.get (J) .get ("Nombre"));
int actorId = getAcToRInt ((String) actorsObjList.get (j) .get ("nombre"));
MediaEntity.Addactor (actorID);
}
// director
ArrayList <DBObject> DirectorObJList = (ArrayList <DBObject>) obj.get ("Director"); // Director
para (int j = 0; j <directorObjList.size (); j ++) {
MediaEntity.AddDirector ((String) DirectorBJList.get (J) .get ("Nombre"));
int directid = getDirectorInt ((String) DirectorBjList.get (j) .get ("nombre"));
MediaEntity.AddDirector (Director);
}
// Palabra clave
para (int j = 0; j <keywordList.size (); j ++) {
MediaEntity.AddKeyword (KeywordList.get (j));
int keywordId = getKeywordInt (KeywordList.get (j));
MediaEntity.AddKeyword (KeywordID);
}
// copyright
para (int j = 0; j <copyrightList.size (); j ++) {
MediaEntity.AddCopyright (CopyrightList.get (j));
}
MediaEntityList.Add (MediaEntity);
índice ++;
if (index> 100) {
romper;
}
System.out.println (índice + "--- MediaEntity:" + MediaEntity.ToString ());
}
Long costtime = system.currentTimemillis () - starttime;
System.out.println ("Load Data CostTime =" + index + "; costtime =" + costtime/1000f);
} Catch (Exception e) {
E.PrintStackTrace ();
}
}
public static int gettagint (etiqueta de cadena) {
int tagIntid = -1;
intentar {
MongoClient Mongo = New MongoClient (cosineecluster.gmongo_host, cosineecluster.gmongo_port);
Db db = mongo.getdb (cosineecluster.gmongo_db);
DbCollection tagMapCollection = db.getCollection ("recomendar_tag_map");
Dbcursor cursor = tagMapCollection.Find (new BasicDBObject ("Nombre", TAG));
if (cursor == null || cursor.toarray (). size () <= 0) {// Palabras clave de asignación de procesos menos de 2 o n, lo mismo a continuación
return tagIntid;
}
Dbobject obj = cursor.toarray (). Get (0);
Name de cadena = etiqueta;
tagIntid = (Integer) obj.get ("id");
int num = (entero) obj.get ("num");
mongo.close ();
} Catch (desconocidoHosTexception e) {
E.PrintStackTrace ();
}
return tagIntid;
}
public static int getactorInt (actor de cadena) {
int actorIntid = -1;
intentar {
MongoClient Mongo = New MongoClient (cosineecluster.gmongo_host, cosineecluster.gmongo_port);
Db db = mongo.getdb (cosineecluster.gmongo_db);
DbCollection tagMapCollection = db.getCollection ("recomendar_actor_map");
Dbcursor cursor = tagMapCollection.Find (new BasicDBObject ("Nombre", actor));
if (cursor == null || cursor.toarray (). size () <= 0) {
regreso actorintid;
}
Dbobject obj = cursor.toarray (). Get (0);
Name de cadena = actor;
actorIntid = (entero) obj.get ("id");
int num = (entero) obj.get ("num");
mongo.close ();
} Catch (desconocidoHosTexception e) {
E.PrintStackTrace ();
}
regreso actorintid;
}