What are the aims of the training?
Training programme
Découvrir Fluent NHibernate
Rappels : ADO.Net avec C# ou VB.NET
Pattern DAO (Data Access Object)
Frameworks ORM (Object Relational Mapping) : apports
NHibernate : historique, versions, fonctionnalités
Fluent NHibernate : apports
Dépendances, références
Configuration globale
Architecture des objets d'NHibernate : SessionFactory, Session,...
Atelier : Mise en place de l'environnement, création d'un application utilisant Fluent NHibernate
Réaliser le mapping des entités et des opérations
Types de mapping supportés : auto-mapping, code, xml (hbm)
Mapping des tables et gestion des clés primaires (simples, composées)
Mapping des types de bases, propriétés des colonnes
Gestion de la concurrence : optimistic (dirty, all, versioning), pessimistic
Gestion des relations : OneToMany/ManyToOne, OneToOne, ManyToMany
Paramétrage des cascades
Gestion des collections : Map, Set, List,...
Mapping de l'héritage
Stratégies de chargement : Lazy ou Eager
Requêtes nommées
Récupération de la session d'Hibernate et interrogation/modification de données
Dao disponible et méthodes essentielles
Atelier : Réalisation d'un schéma global de mapping d'une base de données, opérations CRUD (Create Read Update Delete)
Maîtriser le langage à requêtes objet (HQL)
Hibernate Query Language : présentation, fonctionnalités
Sélections de base, filtres
Jointures complexes
Fonctions d'agrégation, de chaine, ...
Gestion des chargements Lazy
Linq to Hibernate
Requêtes natives SQL
Atelier : Réalisation de requêtes complexes, utilisation de Ling to Hibernate
Eléments avancés de NHibernate
Configuration d'une stratégie de nommage
Cycle de vie des entités et validation
Intercepteurs, Event-listeners
Configuration avancée : performance et fonctionnalités
Utilisation du cache niveau 2
Inversion de contrôle avec Spring.Net
Atelier : Gestion du cache et cohabitation Spring.Net / Fluent NHibernate