Benoît Guérout

Benoît évolue depuis 7 ans — dont 2 chez Xebia — sur des architectures orientées Web et affectionne une approche simple et pragmatique des développements. HTML5, Backbone, CSS3, Mongo+Jongo, Rest sont ses passions du moment. Kiss !

 

Jongo, requêter en Java comme dans Mongo shell

Article publié par et le 29 juin 2012.

Catégorie(s) : Cloud / NoSQL / Big Data, Java / JEE

 

Aucun commentaire »

Mots-clefs :, ,

Mongo — la base de données NoSQL orientée document supportée par 10gen — propose un langage de requête compact, simple à appréhender et bien documenté. Les choses se corsent dès que l’on bascule en Java : effectuer une requête, mapper les résultats, utiliser de l’héritage requiert un code très verbeux. Des librairies essayent de simplifier cela (comme Morphia), mais aucune ne propose de requêter en natif. Jongo tente de répondre à ce besoin, utilisant des chaînes de caractères pour requête et unmarshallant les résultats en objets Java.

Lire la suite de cet article »

Jongo = Mongo + Java // le 14 juin au MongoDB Paris

Article publié par et le 8 juin 2012.

Catégorie(s) : Cloud / NoSQL / Big Data

 

Aucun commentaire »

Mots-clefs :, ,

Le 14 juin, le MongoDB Paris à la gentillesse d’accueillir les développeurs de Jongo.

  • Sujet : Jongo, exploiter Mongo en Java avec aisance 
  • Speakers : Benoît Guérout et Yves Amsellem
  • Date : 14 juin 2012 16h25 — 17h05
  • Lieu : Eurosites Republique, 8 Bis Rue de la Fontaine au Roi, 75011 Paris
  • Inscription : S’inscrire à la conférence 10gen

Si Mongo est plein de qualités, les exploiter à l’aide de son driver Java peut être délicat : requêter, mapper les résultats et gérer le polymorphisme nécessitent beaucoup de code. Des sucres syntaxiques en simplifient l’usage (comme Morphia), mais aucun ne permet d’effectuer des requêtes comme dans le shell (en chaînes de caractères). Jongo essaie de répondre à ce besoin, offrant également une désérialisation des résultats en objets Java (avec Jackson).

En un clin d’oeil :

// Mongo shell
db.peoples.find({age: {$gt: 18}})
 
// Jongo
Iterable<People> adults = peoples.find("{age: {$gt: 18}}").as(People.class);
 
// Java driver
Iterable<BSONObject> adults = peoples.find(new BasicDBObject("age", new BasicDBObject("$gt", 18)));
// Morphia
Iterable<People> adults = ds.createQuery(People.class).field("age").greaterThan(18);

Les retours sont les bienvenus sur la mailing-list du projet. Voir jongo.org pour plus.

Jongo = Mongo + Java // le 21 mars au Mongo User Group

Article publié par et le 27 février 2012.

Catégorie(s) : Cloud / NoSQL / Big Data

 

5 commentaires »

Mots-clefs :, ,

Le 21 mars, le Mongo User Group à la gentillesse d’accueillir les développeurs de Jongo.

Si Mongo est plein de qualités, les exploiter à l’aide de son driver Java peut être délicat. Des sucres syntaxiques en simplifient d’ailleurs l’usage, Morphia – le plus populaire – permet d’écrire des requêtes à l’aide de builders et d’exploiter les résultats unmarshallé en objets Java. Dans leur lignée, Jongo propose une nouvelle approche : écrire directement les requêtes en chaînes de caractères (et récupérer les résultats unmarshallés).

En un clin d’oeil :

// Mongo shell
db.peoples.find({age: {$gt: 18}})
 
// Jongo
Iterable<People> adults = peoples.find("{age: {$gt: 18}}").as(People.class);
 
// Java driver
Iterable<BSONObject> adults = peoples.find(new BasicDBObject("age", new BasicDBObject("$gt", 18)));
// Morphia
Iterable<People> adults = ds.createQuery(People.class).field("age").greaterThan(18);

Les retours sont bienvenus sur l’api à l’étude et les sources GitHub.