Skip to content
This repository was archived by the owner on Sep 18, 2024. It is now read-only.

Commit 9938276

Browse files
committed
* Add .gitignore
* Add Logback dependency * Increment Java language version to 11 * Add code showing how to configure log levels * Code patches
1 parent 7c6f0fd commit 9938276

File tree

3 files changed

+32
-23
lines changed

3 files changed

+32
-23
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,7 @@
2121

2222
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
2323
hs_err_pid*
24+
25+
java/dependency-reduced-pom.xml
26+
java/target/
27+
.m2/

java/pom.xml

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,13 @@
77
<dependencies>
88
<dependency>
99
<groupId>org.mongodb</groupId>
10-
<artifactId>mongodb-driver-sync</artifactId><version>x.x.x</version>
10+
<artifactId>mongodb-driver-sync</artifactId><version>4.3.0</version>
11+
</dependency>
12+
<dependency>
13+
<groupId>ch.qos.logback</groupId>
14+
<artifactId>logback-classic</artifactId>
15+
<version>1.2.11</version>
1116
</dependency>
12-
<dependency>
13-
<groupId>org.slf4j</groupId>
14-
<artifactId>slf4j-simple</artifactId>
15-
<version>1.7.31</version>
16-
<scope>compile</scope>
17-
</dependency>
1817
</dependencies>
1918
<properties>
2019
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -26,8 +25,8 @@
2625
<artifactId>maven-compiler-plugin</artifactId>
2726
<version>3.7.0</version>
2827
<configuration>
29-
<source>1.8</source>
30-
<target>1.8</target>
28+
<source>11</source>
29+
<target>11</target>
3130
</configuration>
3231
</plugin>
3332
<plugin>

java/src/main/java/com/start/Getstarted.java

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
package com.start;
22

3-
import com.mongodb.Block;
4-
import com.mongodb.client.MongoClients;
3+
import ch.qos.logback.classic.Level;
4+
import ch.qos.logback.classic.Logger;
5+
6+
import com.mongodb.client.AggregateIterable;
57
import com.mongodb.client.MongoClient;
8+
import com.mongodb.client.MongoClients;
69
import com.mongodb.client.MongoCollection;
710
import com.mongodb.client.MongoCursor;
811
import com.mongodb.client.MongoDatabase;
@@ -17,6 +20,7 @@
1720
import com.mongodb.client.result.DeleteResult;
1821

1922
import org.bson.Document;
23+
import org.slf4j.LoggerFactory;
2024

2125
import java.util.ArrayList;
2226
import java.util.List;
@@ -28,8 +32,17 @@
2832
import static com.mongodb.client.model.Projections.excludeId;
2933
import static com.mongodb.client.model.Sorts.descending;
3034

35+
@SuppressWarnings("ConstantConditions")
3136
public class Getstarted {
3237
public static void main(final String[] args) {
38+
39+
// See https://www.mongodb.com/docs/drivers/java/sync/current/fundamentals/logging/#logger-names
40+
// for available logger names that can be individually configured, in addition to this default
41+
// that covers all of them (logger names are hierarchical and inherit from their ancestor loggers)
42+
Logger root = (Logger) LoggerFactory.getLogger("org.mongodb.driver");
43+
// Available levels are: OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL
44+
root.setLevel(Level.WARN);
45+
3346
String mongoURI = System.getenv("MONGODB_URI");
3447

3548
MongoClient mongoClient = MongoClients.create(mongoURI);
@@ -53,7 +66,7 @@ public static void main(final String[] args) {
5366
System.out.println("\t" + myDoc.toJson());
5467

5568
// insert many
56-
List<Document> documents = new ArrayList<Document>();
69+
List<Document> documents = new ArrayList<>();
5770
for (int i = 0; i < 5; i++) {
5871
documents.add(new Document("i", i));
5972
}
@@ -62,13 +75,11 @@ public static void main(final String[] args) {
6275
System.out.println("\tTotal # of documents: " + collection.countDocuments());
6376

6477
// lets get all the documents in the collection and print them out
65-
MongoCursor<Document> cursor = collection.find().iterator();
66-
try {
78+
try (MongoCursor<Document> cursor = collection.find().iterator())
79+
{
6780
while (cursor.hasNext()) {
6881
System.out.println(cursor.next().toJson());
6982
}
70-
} finally {
71-
cursor.close();
7283
}
7384

7485
// now use a query to get 1 document out
@@ -99,15 +110,10 @@ public static void main(final String[] args) {
99110
// Aggregation
100111
Document group = Document.parse("{$group:{_id: null, total :{$sum:'$i'}}}");
101112
List<Document> pipeline = asList(group);
102-
103-
Consumer<Document> printBlock = new Consumer<Document>() {
104-
public void accept(final Document doc) {
105-
System.out.println(doc.toJson());
106-
};
107-
};
113+
108114
AggregateIterable<Document> iterable = collection.aggregate(pipeline);
109115
System.out.println("Aggregation Result:");
110-
iterable.forEach(printBlock);
116+
iterable.forEach(documentX -> System.out.println(documentX.toJson()));
111117

112118
// release resources
113119
mongoClient.close();

0 commit comments

Comments
 (0)