List of usage examples for com.mongodb.client MongoCollection drop
void drop();
From source file:edu.ucuenca.storage.services.PopulateMongoImpl.java
License:Apache License
@Override public void authorsByDiscipline() { final Task task = taskManagerService.createSubTask("Caching Authors by Discipline", "Mongo Service"); try (MongoClient client = new MongoClient(conf.getStringConfiguration("mongo.host"), conf.getIntConfiguration("mongo.port"));) { MongoDatabase db = client.getDatabase(MongoService.Database.NAME.getDBName()); // Delete and create collection final MongoCollection<Document> collection = db .getCollection(MongoService.Collection.AUTHORS_DISCPLINE.getValue()); collection.drop(); final List<Map<String, Value>> clusters = sparqlService.query(QueryLanguage.SPARQL, queriesService.getClusterURIs()); task.updateTotalSteps(clusters.size()); BoundedExecutor threadPool = BoundedExecutor.getThreadPool(5); for (int i = 0; i < clusters.size(); i++) { final int j = i; final String cluster = clusters.get(i).get("c").stringValue(); threadPool.submitTask(new Runnable() { @Override//from w ww . ja v a2 s . c o m public void run() { // String subcluster = areas.get(i).get("subcluster").stringValue(); // Print progress log.info("Relating {}/{}. Cluster: '{}'", j + 1, clusters.size(), cluster); task.updateDetailMessage("Cluster", cluster); // task.updateDetailMessage("Subluster", subcluster); task.updateProgress(j + 1); // Get authors of an area from the SPARQL endpoint and transform them to JSON . String authorsByDisc = commonService.getClusterGraph(cluster); Document parse = Document.parse(authorsByDisc); BasicDBObject key = new BasicDBObject(); key.put("cluster", cluster); //key.put("subcluster", subcluster); parse.append("_id", key); collection.insertOne(parse); } }); } threadPool.end(); } catch (MarmottaException | InterruptedException ex) { log.error(ex.getMessage(), ex); } finally { taskManagerService.endTask(task); } }
From source file:edu.ucuenca.storage.services.PopulateMongoImpl.java
License:Apache License
@Override public void Countries() { Task task = taskManagerService.createSubTask("Caching countries", "Mongo Service"); try (MongoClient client = new MongoClient(conf.getStringConfiguration("mongo.host"), conf.getIntConfiguration("mongo.port"));) { MongoDatabase db = client.getDatabase(MongoService.Database.NAME.getDBName()); // Delete and create collection MongoCollection<Document> collection = db.getCollection(MongoService.Collection.COUNTRIES.getValue()); collection.drop(); try {// ww w .ja v a 2 s. c o m List<Map<String, Value>> countries = sparqlService.query(QueryLanguage.SPARQL, queriesService.getCountries()); task.updateTotalSteps(countries.size()); for (int i = 0; i < countries.size(); i++) { String co = countries.get(i).get("co").stringValue(); String code = getCountryCode(co); String countriesNodes = countrynodes(co, code).toString(); Document parse = Document.parse(countriesNodes); parse.append("_id", co); collection.insertOne(parse); task.updateDetailMessage("Country", co); task.updateProgress(i + 1); } } catch (MarmottaException ex) { java.util.logging.Logger.getLogger(PopulateMongoImpl.class.getName()).log(Level.SEVERE, null, ex); } finally { taskManagerService.endTask(task); } } }
From source file:edu.ucuenca.storage.services.PopulateMongoImpl.java
License:Apache License
@Override public void cleanSPARQLS() { try (MongoClient client = new MongoClient(conf.getStringConfiguration("mongo.host"), conf.getIntConfiguration("mongo.port"));) { MongoDatabase db = client.getDatabase(MongoService.Database.NAME.getDBName()); MongoCollection<Document> collection = db.getCollection(MongoService.Collection.SPARQLS.getValue()); collection.drop(); }/*www . ja v a2s . c o m*/ }
From source file:edu.ucuenca.storage.services.PopulateMongoImpl.java
License:Apache License
@Override public void LoadStatisticsbyAuthor() { final Task task = taskManagerService.createSubTask("Caching statistics by Author", "Mongo Service"); try (MongoClient client = new MongoClient(conf.getStringConfiguration("mongo.host"), conf.getIntConfiguration("mongo.port"));) { MongoDatabase db = client.getDatabase(MongoService.Database.NAME.getDBName()); MongoCollection<Document> collection = db .getCollection(MongoService.Collection.STATISTICS_AUTHOR.getValue()); collection.drop(); List<String> queries = new ArrayList(); queries.add("date"); queries.add("keywords"); queries.add("providers"); queries.add("provenance"); queries.add("conference"); final String uri = ""; String name = ""; String fullname = ""; final List<Map<String, Value>> authors = sparqlService.query(QueryLanguage.SPARQL, queriesService.getAuthorsCentralGraph()); Document parse = new Document(); task.updateTotalSteps(authors.size()); int ints = 0; // final int j = 0; for (Map<String, Value> o : authors) { // j++; ints++;// w w w . j av a2 s .c om final String a = o.get("a").stringValue(); task.updateDetailMessage("Author ", a); final SynchronizedParse sp = new SynchronizedParse(); BoundedExecutor threadPool = BoundedExecutor.getThreadPool(5); log.info("Stats {} ", a); log.info("Stats {}/{}. Author: '{}' ", ints, authors.size(), a); //task.updateDetailMessage("URI", a); task.updateProgress(ints); for (final String q : queries) { threadPool.submitTask(new Runnable() { @Override public void run() { String response; try { response = statisticsbyAuthorsQuery(a, q); sp.appendParse(Document.parse(response), q); } catch (MarmottaException ex) { java.util.logging.Logger.getLogger(PopulateMongoImpl.class.getName()) .log(Level.SEVERE, null, ex); } } }); /* ints++; uri = a; parse.append(q, Document.parse(response)); log.info("Stats Author {} ", uri); log.info("Query {}", q); task.updateProgress(ints);*/ } threadPool.end(); Document authorp = sp.getDoc(); authorp.append("_id", a); // parse.append("name", name); // parse.append("fullname", fullname); collection.insertOne(authorp); } taskManagerService.endTask(task); // loadStadistics(MongoService.Collection.STATISTICS.getValue(), queries); } catch (MarmottaException ex) { log.error("erro" + ex); java.util.logging.Logger.getLogger(PopulateMongoImpl.class.getName()).log(Level.INFO, null, ex); } catch (InterruptedException ex) { java.util.logging.Logger.getLogger(PopulateMongoImpl.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:examples.tour.QuickTour.java
License:Apache License
/** * Run this main method to see the output of this quick example. * * @param args takes an optional single argument for the connection string *///from ww w .j av a2s. com public static void main(final String[] args) { MongoClient mongoClient; if (args.length == 0) { // connect to the local database server mongoClient = new MongoClient(); } else { mongoClient = new MongoClient(new MongoClientURI(args[0])); } // get handle to "mydb" database MongoDatabase database = mongoClient.getDatabase("mydb"); // get a handle to the "test" collection MongoCollection<Document> collection = database.getCollection("test"); // drop all the data in it collection.drop(); // make a document and insert it Document doc = new Document("name", "MongoDB").append("type", "database").append("count", 1).append("info", new Document("x", 203).append("y", 102)); collection.insertOne(doc); // get it (since it's the only one in there since we dropped the rest earlier on) Document myDoc = collection.find().first(); System.out.println(myDoc.toJson()); // now, lets add lots of little documents to the collection so we can explore queries and cursors List<Document> documents = new ArrayList<Document>(); for (int i = 0; i < 100; i++) { documents.add(new Document("i", i)); } collection.insertMany(documents); System.out.println( "total # of documents after inserting 100 small ones (should be 101) " + collection.count()); // find first myDoc = collection.find().first(); System.out.println(myDoc.toJson()); // lets get all the documents in the collection and print them out MongoCursor<Document> cursor = collection.find().iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } for (Document cur : collection.find()) { System.out.println(cur.toJson()); } // now use a query to get 1 document out myDoc = collection.find(eq("i", 71)).first(); System.out.println(myDoc.toJson()); // now use a range query to get a larger subset cursor = collection.find(gt("i", 50)).iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } // range query with multiple constraints cursor = collection.find(and(gt("i", 50), lte("i", 100))).iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } // Query Filters myDoc = collection.find(eq("i", 71)).first(); System.out.println(myDoc.toJson()); // now use a range query to get a larger subset Block<Document> printBlock = new Block<Document>() { public void apply(final Document document) { System.out.println(document.toJson()); } }; collection.find(gt("i", 50)).forEach(printBlock); // filter where; 50 < i <= 100 collection.find(and(gt("i", 50), lte("i", 100))).forEach(printBlock); // Sorting myDoc = collection.find(exists("i")).sort(descending("i")).first(); System.out.println(myDoc.toJson()); // Projection myDoc = collection.find().projection(excludeId()).first(); System.out.println(myDoc.toJson()); // Aggregation collection .aggregate( asList(match(gt("i", 0)), project(Document.parse("{ITimes10: {$multiply: ['$i', 10]}}")))) .forEach(printBlock); myDoc = collection.aggregate(singletonList(group(null, sum("total", "$i")))).first(); System.out.println(myDoc.toJson()); // Update One collection.updateOne(eq("i", 10), set("i", 110)); // Update Many UpdateResult updateResult = collection.updateMany(lt("i", 100), inc("i", 100)); System.out.println(updateResult.getModifiedCount()); // Delete One collection.deleteOne(eq("i", 110)); // Delete Many DeleteResult deleteResult = collection.deleteMany(gte("i", 100)); System.out.println(deleteResult.getDeletedCount()); collection.drop(); // ordered bulk writes List<WriteModel<Document>> writes = new ArrayList<WriteModel<Document>>(); writes.add(new InsertOneModel<Document>(new Document("_id", 4))); writes.add(new InsertOneModel<Document>(new Document("_id", 5))); writes.add(new InsertOneModel<Document>(new Document("_id", 6))); writes.add( new UpdateOneModel<Document>(new Document("_id", 1), new Document("$set", new Document("x", 2)))); writes.add(new DeleteOneModel<Document>(new Document("_id", 2))); writes.add(new ReplaceOneModel<Document>(new Document("_id", 3), new Document("_id", 3).append("x", 4))); collection.bulkWrite(writes); collection.drop(); collection.bulkWrite(writes, new BulkWriteOptions().ordered(false)); //collection.find().forEach(printBlock); // Clean up database.drop(); // release resources mongoClient.close(); }
From source file:it.terrinoni.m101j.spark.HelloWorldMongoDBSparkFreemarkerStyle.java
public static void main(String[] args) { final Configuration configuration = new Configuration(); configuration.setClassForTemplateLoading(HelloWorldMongoDBSparkFreemarkerStyle.class, "/freemarker"); MongoClient client = new MongoClient(); MongoDatabase database = client.getDatabase("course"); final MongoCollection<Document> collection = database.getCollection("hello"); collection.drop(); collection.insertOne(new Document("name", "MongoDB")); Spark.get("/", new Route() { @Override//ww w .j a v a 2 s . co m public Object handle(Request request, Response response) { StringWriter writer = new StringWriter(); try { Template helloTemplate = configuration.getTemplate("hello.ftl"); Document document = collection.find().first(); helloTemplate.process(document, writer); } catch (IOException | TemplateException ex) { Spark.halt(500); ex.printStackTrace(); } return writer; } }); }
From source file:mongodb.QuickTour.java
License:Apache License
/** * Run this main method to see the output of this quick example. * * @param args takes an optional single argument for the connection string */// w w w .j av a2 s.c o m public static void main(final String[] args) { //represents a pool of connections to the database MongoClient mongoClient = new MongoClient("10.9.17.105", 27017); // get handle to "mydb" database MongoDatabase database = mongoClient.getDatabase("test"); // get a handle to the "test" collection MongoCollection<Document> collection = database.getCollection("test"); // drop all the data in it collection.drop(); // make a document and insert it Document doc = new Document("name", "MongoDB").append("type", "database").append("count", 1).append("info", new Document("x", 203).append("y", 102)); collection.insertOne(doc); // get it (since it's the only one in there since we dropped the rest earlier on) Document myDoc = collection.find().first(); System.out.println(myDoc.toJson()); // now, lets add lots of little documents to the collection so we can explore queries and cursors List<Document> documents = new ArrayList<Document>(); for (int i = 0; i < 100; i++) { documents.add(new Document("i", i)); } collection.insertMany(documents); System.out.println( "total # of documents after inserting 100 small ones (should be 101) " + collection.count()); // find first myDoc = collection.find().first(); System.out.println(myDoc.toJson()); // lets get all the documents in the collection and print them out MongoCursor<Document> cursor = collection.find().iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } for (Document cur : collection.find()) { System.out.println(cur.toJson()); } // now use a query to get 1 document out myDoc = collection.find(eq("i", 71)).first(); System.out.println(myDoc.toJson()); // now use a range query to get a larger subset cursor = collection.find(gt("i", 50)).iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } // range query with multiple constraints cursor = collection.find(and(gt("i", 50), lte("i", 100))).iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } // Query Filters myDoc = collection.find(eq("i", 71)).first(); System.out.println(myDoc.toJson()); // now use a range query to get a larger subset Block<Document> printBlock = new Block<Document>() { @Override public void apply(final Document document) { System.out.println(document.toJson()); } }; collection.find(gt("i", 50)).forEach(printBlock); // filter where; 50 < i <= 100 collection.find(and(gt("i", 50), lte("i", 100))).forEach(printBlock); // Sorting myDoc = collection.find(exists("i")).sort(descending("i")).first(); System.out.println(myDoc.toJson()); // Projection myDoc = collection.find().projection(excludeId()).first(); System.out.println(myDoc.toJson()); // Update One collection.updateOne(eq("i", 10), new Document("$set", new Document("i", 110))); // Update Many UpdateResult updateResult = collection.updateMany(lt("i", 100), new Document("$inc", new Document("i", 100))); System.out.println(updateResult.getModifiedCount()); // Delete One collection.deleteOne(eq("i", 110)); // Delete Many DeleteResult deleteResult = collection.deleteMany(gte("i", 100)); System.out.println(deleteResult.getDeletedCount()); collection.drop(); // ordered bulk writes List<WriteModel<Document>> writes = new ArrayList<WriteModel<Document>>(); writes.add(new InsertOneModel<Document>(new Document("_id", 4))); writes.add(new InsertOneModel<Document>(new Document("_id", 5))); writes.add(new InsertOneModel<Document>(new Document("_id", 6))); writes.add( new UpdateOneModel<Document>(new Document("_id", 1), new Document("$set", new Document("x", 2)))); writes.add(new DeleteOneModel<Document>(new Document("_id", 2))); writes.add(new ReplaceOneModel<Document>(new Document("_id", 3), new Document("_id", 3).append("x", 4))); collection.bulkWrite(writes); collection.drop(); collection.bulkWrite(writes, new BulkWriteOptions().ordered(false)); collection.find().forEach(printBlock); // Clean up // database.drop(); // release resources mongoClient.close(); }
From source file:mongodb.QuickTourAdmin.java
License:Apache License
/** * Run this main method to see the output of this quick example. * * @param args/*w w w . j a v a 2 s .com*/ * takes an optional single argument for the connection string */ public static void main(final String[] args) { MongoClient mongoClient; if (args.length == 0) { // connect to the specified database server mongoClient = new MongoClient("10.9.17.105", 27017); } else { mongoClient = new MongoClient(new MongoClientURI(args[0])); } // get handle to "test" database MongoDatabase database = mongoClient.getDatabase("test"); database.drop(); // get a handle to the "test" collection MongoCollection<Document> collection = database.getCollection("test"); // drop all the data in it collection.drop(); // getting a list of databases for (String name : mongoClient.listDatabaseNames()) { System.out.println(name); } // drop a database mongoClient.getDatabase("databaseToBeDropped").drop(); // create a collection database.createCollection("cappedCollection", new CreateCollectionOptions().capped(true).sizeInBytes(0x100000)); for (String name : database.listCollectionNames()) { System.out.println(name); } // drop a collection: collection.drop(); // create an ascending index on the "i" field // 1 ascending or -1 for descending collection.createIndex(new Document("i", 1)); // list the indexes on the collection for (final Document index : collection.listIndexes()) { System.out.println(index.toJson()); } // create a text index on the "content" field // text indexes to support text search of string content collection.createIndex(new Document("content", "text")); collection.insertOne(new Document("_id", 0).append("content", "textual content")); collection.insertOne(new Document("_id", 1).append("content", "additional content")); collection.insertOne(new Document("_id", 2).append("content", "irrelevant content")); // Find using the text index long matchCount = collection.count(text("textual content -irrelevant")); System.out.println("Text search matches: " + matchCount); // Find using the $language operator Bson textSearch = text("textual content -irrelevant", "english"); matchCount = collection.count(textSearch); System.out.println("Text search matches (english): " + matchCount); // Find the highest scoring match Document projection = new Document("score", new Document("$meta", "textScore")); Document myDoc = collection.find(textSearch).projection(projection).first(); System.out.println("Highest scoring document: " + myDoc.toJson()); // Run a command Document buildInfo = database.runCommand(new Document("buildInfo", 1)); System.out.println(buildInfo); // release resources database.drop(); mongoClient.close(); }
From source file:mongoSample.MongoSample.java
License:Apache License
/** * Run this main method to see the output of this quick example. * * @param args//from w w w . jav a2 s .com * takes an optional single argument for the connection string */ public static void main(final String[] args) { String mongoServer = args[0]; MongoClient mongoClient = new MongoClient(mongoServer); MongoDatabase database = mongoClient.getDatabase("sakila"); MongoCollection<Document> collection = database.getCollection("test"); // drop all the data in it collection.drop(); // make a document and insert it Document doc = new Document("name", "MongoDB").append("type", "database").append("count", 1).append("info", new Document("x", 203).append("y", 102)); collection.insertOne(doc); // get it (since it's the only one in there since we dropped the rest // earlier on) Document myDoc = collection.find().first(); System.out.println(myDoc.toJson()); // now, lets add lots of little documents to the collection so we can // explore queries and cursors List<Document> documents = new ArrayList<Document>(); for (int i = 0; i < 100; i++) { documents.add(new Document("i", i)); } collection.insertMany(documents); System.out.println( "total # of documents after inserting 100 small ones (should be 101) " + collection.count()); // find first myDoc = collection.find().first(); System.out.println(myDoc); System.out.println(myDoc.toJson()); // lets get all the documents in the collection and print them out MongoCursor<Document> cursor = collection.find().iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } for (Document cur : collection.find()) { System.out.println(cur.toJson()); } // now use a query to get 1 document out myDoc = collection.find(eq("i", 71)).first(); System.out.println(myDoc.toJson()); // now use a range query to get a larger subset cursor = collection.find(gt("i", 50)).iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } // range query with multiple constraints cursor = collection.find(and(gt("i", 50), lte("i", 100))).iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } // Query Filters myDoc = collection.find(eq("i", 71)).first(); System.out.println(myDoc.toJson()); // now use a range query to get a larger subset Block<Document> printBlock = new Block<Document>() { @Override public void apply(final Document document) { System.out.println(document.toJson()); } }; collection.find(gt("i", 50)).forEach(printBlock); // filter where; 50 < i <= 100 collection.find(and(gt("i", 50), lte("i", 100))).forEach(printBlock); // Sorting myDoc = collection.find(exists("i")).sort(descending("i")).first(); System.out.println(myDoc.toJson()); // Projection myDoc = collection.find().projection(excludeId()).first(); System.out.println(myDoc.toJson()); // Update One collection.updateOne(eq("i", 10), new Document("$set", new Document("i", 110))); // Update Many UpdateResult updateResult = collection.updateMany(lt("i", 100), new Document("$inc", new Document("i", 100))); System.out.println(updateResult.getModifiedCount()); // Delete One collection.deleteOne(eq("i", 110)); // Delete Many DeleteResult deleteResult = collection.deleteMany(gte("i", 100)); System.out.println(deleteResult.getDeletedCount()); collection.drop(); // ordered bulk writes List<WriteModel<Document>> writes = new ArrayList<WriteModel<Document>>(); writes.add(new InsertOneModel<Document>(new Document("_id", 4))); writes.add(new InsertOneModel<Document>(new Document("_id", 5))); writes.add(new InsertOneModel<Document>(new Document("_id", 6))); writes.add( new UpdateOneModel<Document>(new Document("_id", 1), new Document("$set", new Document("x", 2)))); writes.add(new DeleteOneModel<Document>(new Document("_id", 2))); writes.add(new ReplaceOneModel<Document>(new Document("_id", 3), new Document("_id", 3).append("x", 4))); collection.bulkWrite(writes); collection.drop(); collection.bulkWrite(writes, new BulkWriteOptions().ordered(false)); // collection.find().forEach(printBlock); // Clean up //database.drop(); // release resources mongoClient.close(); }
From source file:mongoSample.MyMongoDemo.java
License:Apache License
public static void main(final String[] args) { String mongoServer = args[0]; MongoClient mongoClient = new MongoClient(mongoServer); MongoDatabase database = mongoClient.getDatabase("NGDBDemo"); MongoCollection<Document> collection = database.getCollection("test"); collection.drop(); Document people = new Document(); // A document for a person people.put("Name", "Guy"); people.put("Email", "guy@gmail.com"); BasicDBList friendList = new BasicDBList(); // A list for the persons // friends/*from w w w.ja v a 2 s . c o m*/ BasicDBObject friendDoc = new BasicDBObject(); // A document for each // friend friendDoc.put("Name", "Jo"); friendDoc.put("Email", "Jo@gmail.com"); friendList.add(friendDoc); friendDoc.clear(); friendDoc.put("Name", "John"); friendDoc.put("Email", "john@gmail.com"); friendList.add(friendDoc); people.put("Friends", friendDoc); collection.insertOne(people); System.out.println('1'); MongoCursor<Document> cursor = collection.find().iterator(); try { while (cursor.hasNext()) { System.out.println(cursor.next().toJson()); } } finally { cursor.close(); } System.out.println('2'); for (Document cur : collection.find()) { System.out.println(cur.toJson()); } System.out.println('3'); // now use a query to get 1 document out Document myDoc = collection.find(eq("Name", "Guy")).first(); System.out.println(myDoc.toJson()); database = mongoClient.getDatabase("sakila"); collection = database.getCollection("films"); for (Document cur : collection.find()) { System.out.println(cur.toJson()); } mongoClient.close(); }