24 Mayıs 2015 Pazar

Java ile MongoDB CRUD

      S.a. arkadaşlar,
      Java ile mongodb'ye bağlanma ile ilgili ilk yazımızda bilgilere yer vermiştik. NoSql nedir,  mongodb'ye nasıl bağlanılır ? Hangi arayüz programları kullanılabilir gibi soruların cevaplarını aramıştık. En son ise veritabana bir ekleme işlemi yapıp yazımıza son vermiştik. Bu sefer eklemeyle birlikte silme güncelleme listeleme gibi işlemleri de gözden geçirmeye çalışacağız. Bağlantıyla ilgili problemi olan arkadaşlar dediğimiz gibi ilk yazımıza göz atabilirler.



      Şimdi kısaca yaptığımız işlemden bahsedelim. Daha sonra da kodumuzu paylaşalım. Öncelikle veri tabanımıza bir veri ekliyoruz. Daha sonra bu verimizi  name parametresine göre güncelliyoruz. Daha sonra da güncellediğimiz veriyi siliyoruz ve bunu ekrana yansıtıyoruz. Ekleme güncelleme ve silme işlemlerinden sonra listeleme işlemleri yaptık. Bunun sebebi kodumuz doğru mu çalışıyor onu görmemizdir. Kodlar içerisinde yorum satırlarıyla açıklamalar yapılmıştır. Sormak istediğiniz birşey olursa elimizden geldiğince yardımcı olmaya çalışırız.

try {
// Mongodb'yi bağlanmak için
MongoClient mongoClient = new MongoClient("localhost", 27017);
// veritabanımınız ismi
DB db = mongoClient.getDB("test");
System.out.println("Collection mycol selected successfully");
// ekleme işlemini yapıyoruz
// Daha önceki yazımızda ekleme ile ilgili ayrıntılı yazmıştık
DBCollection col = db.getCollection("CRUD");
BasicDBObject doc = new BasicDBObject("name", "MongoDB")
.append("type", "database")
.append("count", 1)
.append("info",
new BasicDBObject("x", 203).append("y", 102));
col.insert(doc);

// Listeleme işlemi yapıyoruz
DBCursor cursor = col.find();
int i = 1;
// kayıt olduğu sürece ekrana yazdırıyoruz
while (cursor.hasNext()) {
System.out.println("Inserted Document: " + i);
System.out.println(cursor.next());
i++;
}

// güncelleme işlemini yapıyoruz.
BasicDBObject query = new BasicDBObject();
// güncellemek istediğimiz alanı yazıyoruz
query.put("name", "MongoDB");
// yeni değerimizi buraya yazıyoruz
BasicDBObject newDocument = new BasicDBObject();
newDocument.put("name", "MongoDB-Uptade");

BasicDBObject updateObj = new BasicDBObject();
updateObj.put("$set", newDocument);
col.update(query, updateObj);
System.out.println("Document uptaded successfully");

// Listeleme işlemini tekrar yapıyoruz
DBCursor cursorUptade = col.find();
i = 1;
// kayıt olduğu sürece ekrana yazdırıyoruz
while (cursorUptade.hasNext()) {
System.out.println("Inserted Document: " + i);
System.out.println(cursorUptade.next());
i++;
}

// silme işlemini yapıyoruz
// belirtilen parametreye göre siliyoruz
doc.put("name", "MongoDB-Uptade");
col.remove(doc);
System.out.println("Document deleted successfully");

// Listeleme İşlemini tekrar yapıyoruz
// Silinme işlemini daha iyi görebilmek için böyle yaptık
DBCursor cursorDelete = col.find();
i = 1;
while (cursorDelete.hasNext()) {
System.out.println("Document after deleted: " + i);
System.out.println(cursorDelete.next());
i++;
}

} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
}

Çıktımız:
Inserted Document: 2{ "_id" : { "$oid" : "55618935e86406147c6d500d"} , "name" : "MongoDB-Uptade" , "type" : "database" , "count" : 1 , "info" : { "x" : 203 , "y" : 102}}
Inserted Document: 3{ "_id" : { "$oid" : "55618fbee8640614e8c7acdb"} , "name" : "MongoDB" , "type" : "database" , "count" : 1 , "info" : { "x" : 203 , "y" : 102}}
Document uptaded successfully
Inserted Document: 3{ "_id" : { "$oid" : "55618fbee8640614e8c7acdb"} , "name" : "MongoDB-Uptade" , "type" : "database" , "count" : 1 , "info" : { "x" : 203 , "y" : 102}}
Document deleted successfully
Document after deleted:

    Yazımızı burada son veriyoruz. İyi çalışmalar dileriz








Hiç yorum yok:

Yorum Gönder