NormandyJUG – Hibernate vs Cloud Computing & NoSQL

Après plus d'un an et demi de pause forcée, j'ai pu enfin retourner au NormandyJUG ! Cette soirée était consacrée à un seul et unique thème :  l'accès aux données face à la montée en charge. La session était animée par Julien Dubois qui est entre autre l'auteur de Spring par la pratique. Le sujet ou l'intervenant devaient intéresser puisque nous étions une 50aine. En partant du principe que la scalabilité d'une application Java est limitée par la base de données,…
Lire d'avantage

Hibernate 3.3

Le projet Hibernate propose une nouvelle version de leur framework de mapping objet-relationnel. Il y a une dizaine de jours, l'équipe du projet Hibernate a annoncé la sortie de Hibernate Core GA. Cette nouvelle version est disponible en téléchargement. Elle n'apporte pas de gros changements puisque l'essentiel des nouveautés concerne le refactoring du projet. Le projet est maintenant construit avec Maven et a été découpé en plusieurs JARs pour réduire les dépendances. De plus, le cache de second niveau a…
Lire d'avantage

Dites au revoir aux PermGen space

Vous travaillez sous Eclipse ? Vous utilisez un serveur d'applications intégrant Tomcat tel que JOnAS ou JBoss ? Et l'accès aux données est fait via Hibernate (même encapsulé dans la couche EJB3) ? Et pour finir, votre application contient un module web ? Si vous avez répondu par l'affirmative à la majorité de ces questions, vous devez bien connaitre le message suivant : PermGen space Ceci se produit après quelques déploiements à chaud de votre application et provoque le blocage…
Lire d'avantage

Hibernate – attention aux injections SQL !

J'avoue que le titre de cette note est quelque peu alarmiste. C'est avant tout pour retenir l'attention et marquer les développeurs qui se croient à l'abri de ce genre d'attaque parce qu'ils utilisent Hibernate. En effet, l'utilisation de ce framework ne vous protège pas forcément des injections SQL comme le rappelle TSS dans son article intitulé "Une légende urbaine à propos d'Hibernate". L'auteur explique que la création de requête SQL par concaténation de chaîne de caractères rend possible les attaques…
Lire d'avantage

Mais où est donc l’API de requête pour les EJB3 ?

Pour rappel, les EJB3 sont le résultat du mariage entre les EJB2 et Hibernate et XDoclet Hibernate Annotation. Lorsque les développeurs travaillent avec Hibernate, ils prennent vite l'habitude d'utiliser le HQL pour les requêtes statiques et l'API Criteria pour les requêtes dynamiques. Cependant, le passage d'Hibernate aux EJB3 Entities provoque quelques frustrations. En effet, mis à part le JPQL qui est l'équivalent du HQL chez Hibernate, il n'y a aucune API pour générer dynamiquement des requêtes sur les EJB3 Entities…
Lire d'avantage

Hibernate Tools – empêcher la génération des relations one-to-many

Introduction Hibernate Tools est très puissant pour générer le code des Java beans et les fichiers de configuration de mapping utilisés par Hibernate. Cependant, le code généré par défaut n'est pas forcément nécessaire. Par exemple, les relations one-to-many sont souvent inutiles. Par exemple en considérant les tables USER et USER_ROLE et leur Java beans respectifs User et UserRole. La relation many-to-one représentée par la méthode () est utile. Par contre, la relation one-to-many représentée par la méthode () est complètement…
Lire d'avantage

Hibernate Tools – Hibernate pour Eclipse & Ant

L'écriture des fichiers de mapping et des Java beans pour Hibernate représente souvent une tâche longue et répétitive. Quelques outils sont sortis pour faciliter cette tâche sans réel succès. Pourtant, Hibernate Tools semble être l'outil qui permet d'augmenter la productivité des développeurs qui s'attelle au travail du mapping entre la base de données et les objets Java avec Hibernate. Cet outil s'intègre dans Eclipse et est également disponible pour JBoss IDE. Cette solution propose pas moins : d'un éditeur de…
Lire d'avantage

Hibernate – SQL natif, HQL ou API Criteria ?

Introduction Hibernate propose plusieurs solutions pour réaliser des requêtes en base de données. Lorsque que le développeur doit écrire une requête avec Hibernate, il a trois possibilités : le SQL natif le HQL l'API Criteria (et Example) Quelle est la meilleure solution pour écrire une requête avec Hibernate ? Solutions SQL natif L'un des objectifs d'Hibernate est de s'éloigner de la base de données. Or, l'utilisation du SQL natif va à l'encontre de cet objectif. De ce point de vue,…
Lire d'avantage