- iBATIS
-
iBATIS est un framework Apache de persistance qui permet de mettre en correspondance des requêtes SQL et des instances d'objet. Le 21 mai 2010 l'équipe de développement a décidé de se déplacer de l'Apache Software Foundation vers Google Code en changeant le nom du projet vers MyBatis.
Sommaire
Principe
Les requêtes SQL sont associées à des classes d'objets via des fichiers de définition XML. En d'autres termes, un SELECT en SQL via iBATIS renvoie directement l'instance (ou une liste d'instances le cas échéant) de l'objet correspondant.
Association entre objets et relations
Les objets mis en correspondance avec une relation doivent pouvoir être construits, renseignés et consultés (par des méthodes du type consultation/modification d'attributs) tels que les JavaBeans.
L'association peut se faire quasiment automatiquement, iBatis analysant les types de part et d'autre et effectuant les conversions qui correspondent aux attributs des classes et aux attributs des relations mises en œuvre.
Il est également possible de définir les correspondances manuellement dans des cas plus complexes nécessitant par exemple des conversions à la volée. Une requête peut, de plus, prendre des paramètres selon une correspondance donnée (correspondance paramètre) et renvoyer des résultats dans une autre (correspondance de résultat) ou dans un type prédéfini du langage utilisé. Il peut enfin s'agir d'objets correspondance basées sur les noms des champs de la relation.
Une seconde analyse de la requête instanciée est également possible à condition d'être explicitement demandée (cela permet par exemple d'avoir une partie de requête dynamique).
L'utilisation d'espaces de noms permet de catégoriser les mises en correspondance en fonction des différents domaines mis en œuvre dans l'application.
Optimisation des accès
iBATIS dispose de différents modèles de cache pour éviter de relancer une requête sur la base de données si ce n'est pas nécessaire (mémoire simple, dernier utilisé, etc).
Gestion de la transaction
Il y a 4 manières de gérer la transaction :
- Avec la gestion des exceptions
- Classes anonymes permettant de gérer une transaction (Solution "sale")
- Utilisation avec Spring : on applique un filtre sur le nom des méthodes et on exécute la gestion de la transaction sur un nom particulier
- Possibilité de réaliser une gestion automatique avec un système de filtre s'exécutant avant et après chaque écran
Versions disponibles
Le framework est disponible sous licence Apache v2.0 pour les langages suivants :
Voir aussi
Articles connexes
- Frameworks Java de persistance
- Hibernate, un framework analogue
Liens externes
- (en) Site officiel
- (en) Wiki iBatis
- (en) Aide en ligne iBatis .Net
Catégories :- Framework de programmation
- Logiciel sous licence libre
- Logiciel pour les bases de données
Wikimedia Foundation. 2010.