A cópia do código é a seguinte:
pacote mymaven;
importar java.net.unknownhostException;
importar java.util.set;
importação com.mongodb.basicdbobject;
importar com.mongodb.db;
importação com.mongodb.dbcollection;
importação com.mongodb.dbcursor;
importação com.mongodb.dbobject;
importar com.mongodb.mongo;
importar com.mongodb.mongoException;
Teste de classe pública {
public static void main (string [] args) lança DesconheckhostException, MongoException {
Mongo Mongo = novo Mongo ("172.27.9.104", 27017);
Db db = mongo.getdb ("mytestdb");
Set <string> cols = db.getCollectionNames ();
// imprima a coleção no banco de dados, aqui deve ser nulo
para (string s: cols) {
System.out.println (s);
}
DBCollection Collection = db.getCollection ("MyTestColl");
Coleção.Drop ();
BasicdBObject Obj = new BasicDBObject ();
obj.put ("de", "blog.ihomer.net");
obj.put ("to", "forum.ithomer.net");
obj.put ("sujeito", "ithomer.net");
Coleção.Insert (OBJ);
DbObject dbobj = coletor.findone ();
System.out.println (dbobj);
// inserir 10 {classificação: i} dados
for (int i = 0; i <10; i ++) {
Coleção.Insert (new BasicDBObject (). Append ("Ranking", i));
}
System.out.println ("count:" + collection.getCount ());
Dbcursor cursor = coleção.find ();
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// Consulta condicional simples, recordes de consulta com classificação de 1
Consulta BasicDBObject = new BasicDBObject ();
query.put ("classificação", 1);
cursor = coletor.find (consulta);
System.out.println ("coleção encontre ({/" ranking/": 1}):");
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// Consulta condicional complexa, consulta registra com classificação maior ou igual a 5 e menos de 9
consulta = new BasicDBObject ();
query.put ("ranking", new BasicDBObject ("$ gte", 5) .append ("$ lt", 9));
cursor = coletor.find (consulta);
System.out.println ("coleção encontre ({/" ranking/": [5-9)}):");
while (cursor.hasnext ()) {
System.out.println (cursor.next ());
}
// Mongo.dropdatabase ("mytestdb");
}
}
Resultados em execução:
A cópia do código é a seguinte:
MyTestcoll
System.Indexes
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10107"}, "de": "blog.ihomer.net", "para": "forum.ihomer.net", "sujeito": "ihomer.net"}}
CONTA: 11
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10107"}, "de": "blog.ihomer.net", "para": "forum.ihomer.net", "sujeito": "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}
Coleção Find ({"Ranking": 1}):
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10109"}, "ranking": 1}
coleção find ({"ranking": [5-9)}):
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010d"}, "ranking": 5}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010e"}, "ranking": 6}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd1010f"}, "ranking": 7}
{"_id": {"$ oid": "52c62ed8e4b0f4de3dd10110"}, "ranking": 8}
Exemplo de matriz MongoDB:
A cópia do código é a seguinte:
@Suppresswarnings ("sem controle")
public static void LoadMediAtAgs (List <AcreteEntity> MediaEntityList) {
mediaEntityList.clear ();
tentar {
Mongo Mongo = novo 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 ();
longo id = obj.getlong ("_ id");
ArrayList <String> taglist = (ArrayList <String>) obj.get ("tag"); // tag
ArrayList <String> KeywordList = (ArrayList <String>) obj.get ("palavra -chave"); // palavra -chave
ArrayList <Teger> CopyrightList = (ArrayList <Teger>) obj.get ("Copyright"); // direitos autorais
MediaEntity MediaEntity = New MediaEntity ();
MediaEntity.SetId (ID);
// marcação
for (int j = 0; j <taglist.size (); j ++) {
MediaEntity.addtag (taglist.get (j));
int tagid = getTagint (taglist.get (j));
MediaEntity.addTag (TAGID);
}
// atores
ArrayList <DBObject> ActorsObjList = (ArrayList <DBObject>) obj.get ("atores"); // atores
for (int j = 0; j <atorsobjlist.size (); j ++) {
MediaEntity.addactor (((string) atorsobjlist.get (j) .get ("nome"));
int atorId = getActorint (((string) atorsobjlist.get (j) .get ("nome"));
MediaEntity.Addactor (atorid);
}
// Diretor
ArrayList <DBObject> diretorObjList = (ArrayList <DBOBJED>) obj.get ("Director"); // Diretor
for (int j = 0; j <diretorObjList.size (); j ++) {
mediaEntity.adddirector ((string) diretorObjList.get (j) .get ("nome"));
int DirectorID = getDirectorInt ((String) diretorObjList.get (j) .get ("nome"));
MediaEntity.Adddirector (DirectorID);
}
// palavra -chave
for (int j = 0; j <KeywordList.size (); j ++) {
MediaEntity.adDkeyword (KeywordList.get (j));
int keywordid = getKeywordint (keywordlist.get (j));
MediaEntity.adDkeyword (KeywordID);
}
// direitos autorais
for (int j = 0; j <copyrightlist.size (); j ++) {
MediaEntity.AddcoPyright (CopyrightList.get (J));
}
MediaEntityList.add (MediaEntity);
índice ++;
if (índice> 100) {
quebrar;
}
System.out.println (index + "--- MediaEntity:" + MediaEntity.toString ());
}
long CostTime = System.CurrentTimEmillis () - StartTime;
System.out.println ("Carregar dados de custo =" + index + "; CostTime =" + CostTime/1000f);
} catch (Exceção e) {
E.PrintStackTrace ();
}
}
public static int gettagint (string tag) {
int tagintid = -1;
tentar {
Mongocliente mongto = novo mongoclient (cosinecluster.gmongo_host, cosinecluster.gmongo_port);
Db db = mongo.getdb (cosinecluster.gmongo_db);
Dbcollection tagmapCollection = db.getCollection ("recomend_tag_map");
Dbcursor cursor = tagMapCollection.find (new BasicDBObject ("nome", tag));
if (cursor == null || cursor.toArray (). size () <= 0) {// Processar Mapeamento de palavras -chave menores que 2 ou n, o mesmo abaixo
retornar tagintid;
}
DbObject obj = cursor.toarray (). Get (0);
Nome da string = tag;
tagintid = (inteiro) obj.get ("id");
int num = (inteiro) obj.get ("num");
mongo.close ();
} catch (desconhecidoHosTexception e) {
E.PrintStackTrace ();
}
retornar tagintid;
}
public static int getactorint (ator de string) {
int atorintid = -1;
tentar {
Mongocliente mongto = novo mongoclient (cosinecluster.gmongo_host, cosinecluster.gmongo_port);
Db db = mongo.getdb (cosinecluster.gmongo_db);
Dbcollection tagmapCollection = db.getCollection ("recomend_actor_map");
Dbcursor cursor = tagMapCollection.find (new BasicDBObject ("nome", ator));
if (cursor == null || cursor.toarray (). size () <= 0) {
retornar o atorintid;
}
DbObject obj = cursor.toarray (). Get (0);
Nome da string = ator;
atorintid = (inteiro) obj.get ("id");
int num = (inteiro) obj.get ("num");
mongo.close ();
} catch (desconhecidoHosTexception e) {
E.PrintStackTrace ();
}
retornar o atorintid;
}