JavaMongoDB
- Posted on
- Comments 0
MongoDB-Java-5-Genel Örnek
Merhaba Arkadaşlar ,
MongoDB’ye bağlanmayı , veriçekmeyi , MVC Map object ile veri göndermeyi , Freemarker tempalate ve Spark Framework hakkında önceki yazılarda örnek verdik. Bunların hepsini bir örnekte toplayalım.
import java.io.IOException; import java.io.StringWriter; import java.net.UnknownHostException; import spark.Request; import spark.Response; import spark.Route; import spark.Spark; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBObject; import com.mongodb.MongoClient; import freemarker.template.Configuration; import freemarker.template.Template; import freemarker.template.TemplateException; public class HelloMongoMVC { public static void main(String[] args) throws UnknownHostException { /*MongoDB Connection*/ MongoClient client = new MongoClient("localhost" , 27017); DB database =client.getDB("test"); final DBCollection collection = database.getCollection("course"); final Configuration conf = new Configuration(); conf.setClassForTemplateLoading(HelloWorldFreeMarker.class, "/"); /*Spark Routing*/ Spark.get(new Route("/") { @Override public Object handle(Request arg0, Response arg1) { DBObject obj = collection.findOne(); Template helloTemplate = null; try { helloTemplate = conf.getTemplate("hello.html"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } StringWriter writer = new StringWriter(); System.out.println(obj); try { helloTemplate.process(obj, writer); } catch (TemplateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return writer; } }); } }
Dikkat etmeniz gerekenler:
- Server Already In Use şeklinde bir hata alırsanız. İşlemlerden javaw.exe yi sonlandırıp tekrar deneyin.
- Eğer collection da “hello” isimli bir girdi yok ise yine hata alacaksınız bunuda collection da olan bir değeri yada db.course.insert({“hello” : “world”}) ekleyin.
- MongoDB MVC ile çok iyi geçiniyor gerçekten koda dikkat edersiniz. DBObject direkt process içine gönderdik çünkü bu nesne Hasmap’den extend Map’den implement edilmiş bir nesne yani direkt kullanılabiliyor.
http://localhost:4567 ye girerseniz resimdeki sonucu alacaksınız.
mongoproject5 projemizin son hali indirebilrsiniz.
Muharrem Tığdemir