Introduction à NHibernate

Les fonctions avancées de NHibernate

L'héritage

Pour l’héritage, nous avons 3 solutions :

Le lazy-loading

NHibernate propose une fonction afin d'améliorer les performances : c'est le lazy-loading. Cette fonction permet de ne charger les données uniquement lors de leur accès. On gagne ainsi au temps de chargement des données de l'application. On fait également une économie de ressource mémoire et de charge serveur du coté de la base de données.

Pour utiliser cette fonction, il nous suffit juste d'ajouter l'attribut lazy dans le fichier de mapping avec la valeur true ou false.

<property name="Name" column="parkingName" type="String" lazy="true|false" />

le HQL (Hibernate Query Language)

L'utilisation d'un tel outil permet de faire abstraction sur la partie SQL. Cependant, on peut être amené à en avoir besoin. Pour cela, NHibernate propose son propre langage d'interrogation : le HQL.

C'est un langage basé sur le SQL, sauf qu'au lieu de manipuler des champs et des tables, on manipule des objets et des attributs d'objets. Le HQL est un langage de requête totalement orienté objet.