-
Notifications
You must be signed in to change notification settings - Fork 0
/
conectaMongo.java
105 lines (88 loc) · 3.64 KB
/
conectaMongo.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
package Mongo;
import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.Updates;
import org.bson.Document;
public class conectaMongo {
public void getValues() {
System.out.println("Método getValues()");
MongoClient mongo = new MongoClient("localhost", 27017);
MongoDatabase db = mongo.getDatabase("jogo");
MongoCollection<Document> docs = db.getCollection("jogo");
for (Document doc : docs.find()) {
System.out.println("item: " + doc);
}
System.out.println("getValues() - ok - finalizou");
}
public void insertValues(String usuario, int senha, int score) {
System.out.println("Método insertValues()");
MongoClient mongo = new MongoClient("localhost", 27017);
MongoDatabase db = mongo.getDatabase("jogo");
MongoCollection<Document> docs = db.getCollection("jogo");
Entrada user = createUser(usuario, senha, score);
Document doc = createDocument(user);
docs.insertOne(doc);
getValues();
System.out.println("insertValues ok");
}
public Entrada createUser(String usuario, int senha, int score) {
Entrada u = new Entrada(usuario, senha, score);
return u;
}
public boolean findValuesUsuarioeSenha(String usuario, int senha) {
int x = 0;
int m = 0;
boolean t = false;
MongoClient mongo = new MongoClient("localhost", 27017);
MongoDatabase db = mongo.getDatabase("jogo");
MongoCollection<Document> docs = db.getCollection("jogo");
for (Document doc : docs.find(Filters.eq("usuario", usuario))) {
System.out.println("Achou pelo nome:" + doc);
Document z = doc;
if (z.isEmpty()) {
x = 1;
}
}
for (Document doc : docs.find(Filters.eq("senha", senha))) {
System.out.println("Achou pelo id:" + doc);
Document y = doc;
if (y.isEmpty()) {
m = 1;
}
}
if ((x == 0) && (m == 0)) {
t = true;
}
return t;
}
public void updateScore(String usuario, int novoScore) {
System.out.println("Método updateScore()");
MongoClient mongo = new MongoClient("localhost", 27017);
MongoDatabase db = mongo.getDatabase("jogo");
MongoCollection<Document> docs = db.getCollection("jogo");
// Atualiza o score do usuário
docs.updateOne(Filters.eq("usuario", usuario), Updates.set("score", novoScore));
System.out.println("Score atualizado com sucesso!");
getValues();
}
public Document createDocument(Entrada user) {
Document docBuilder = new Document();
docBuilder.append("usuario", user.getUsuario());
docBuilder.append("senha", user.getSenha());
docBuilder.append("score", user.getScore()); // Adicionei o campo score
return docBuilder;
}
public int getScore(String usuario) {
MongoClient mongo = new MongoClient("localhost", 27017);
MongoDatabase db = mongo.getDatabase("jogo");
MongoCollection<Document> docs = db.getCollection("jogo");
Document userDocument = docs.find(Filters.eq("usuario", usuario)).first();
if (userDocument != null) {
return userDocument.getInteger("score", -1);
} else {
return -1; // Retorna -1 se o usuário não for encontrado
}
}
}