L institut de formation continue des professionnels du Web Formation développement Java, Spring et Hibernate Référence formation : Durée : Prix conseillé : DJSH 10 jours (70 heures) 4 500 HT (hors promotion ou remise particulière) Description Ce parcours de formation pratique se déroulant sur 10 jours vise à vous rendre opérationnel et autonome dans l'utilisation du langage Java pour réaliser des applications WEB ou Desktop. Vous apprendrez également à travailler avec deux frameworks incontournables dans le monde Java, Hibernate et Spring. Vos solides compétences Java vous permettront d'évoluer facilement dans les futures nouveautés de cet environnement. Objectif pédagogique A l'issue de ce stage, les participants seront en mesure de : Programmer en Java, Utiliser et configurer Eclipse, Construire des interfaces graphiques avec Swing, Comprendre l'environnement JEE (Web, servlets, modèle MVC, EJB3), Gérer la persistance des données avec Hibernate/JPA (stockage, lecture, transaction), Mettre en oeuvre Spring dans vos applications, Intégrer d'autres frameworks à Spring (comme Hibernate), Mettre en oeuvre les possibilités de tests proposées par Spring. Pré-requis Connaissance de la programmation objet Public Développeurs, chefs de projet. Dates des prochaines sessions Plan de cours Java et la programmation objet Caractéristiques et particularités du langage Java, domaines d'application (Application, Applet, Développement Serveur, Androïd) Portabilité des programmes Java à travers la JVM Gestion de la mémoire Encapsulation et modificateurs de visibilité Java et l'héritage simple, le mot clé final
Import et packages Java, interface et classes abstraites Java un langage sûr et robuste, Modèle de sécurité, mécanismes des exceptions Le multithreading Exécution d'un programme Java, empaquetage et format et types d'exécutables JDK, JRE, Les outils du développeur Prise en main de l'ide Eclipse Arborescence et chemin d'accès Principe des protections Attributs des fichiers et des répertoires Bien utiliser l'aide en ligne Configuration des exécutions, fonctionnalités du debugger La syntaxe Structure d'un fichier.java Constructeur et processus d'instanciation, le mot clé static Notion d'identité objet Déclaration de variables et Initialisation Types primitifs et classes du package java.lang Opérateurs d'affectation, de comparaison, booléens,... Instruction de contrôles Boucles et itérations Tableaux et collections Gestion des exceptions, blocs try, catch, finally Gestion des entrées sorties Présentation du package java.io Format binaire ou format texte, jeu de caractères et encoding Opérations de lecture Opération d'écriture Support pour XML et le parsing de fichiers Sockets, protocoles et flux Construction d'interface Présentation de SWING Composants d'interface Les différents conteneurs Gestionnaire de mise en forme : les layouts Gestionnaire des évènements et listeners Rendu d'image, dessins vectoriels et modélisation 3D Introduction à Java EE Le standard Java EE et les architecture n-tiers Services techniques des serveurs d'application et Les différentes APIs Modèles de programmation distribuée Plugins Eclipse pour le développement Java EE Implémentation de la couche métier avec les EJB3.0 Composants de la couche de présentation, servlets, vues et Java Beans Le pattern MVC Intégration d'outils de génie logiciel et IDE Eclipse Gestion de Version avec svn, intégration dans Eclipse Le plugin WTP L'outil ant : automatisation déploiement Le build avec Maven, intégration des tests unitaires (Junit) et de conformité (Checkstyle)
Intégration continue avec Hudson Gestion de projet et suivi des bugs avec Trac et JIRA Test de charge et profiling (Jmeter et Jprofiler) Hibernate : Introduction à la problématique de persistance des objets Origines du problème Les facettes de l'impédance mismatch Architectures de la persistance Historique des solutions (JDBC, JDO, Hibernate) Rappel sur JDBC / SQL et ses limites Premier pas avec Hibernate - mapping de l'identité Installer Hibernate Initialiser le framework Hibernate Opérations CRUD sur les objets Identité d'objet et cycle de vie Mapping de l'héritage Le problème du mapping de l'héritage Notion de relations polymorphes Approche : une table par classe concrète Approche : une table par hiérarchie Approche : une table par classe Mapping des associations Association et navigation. Association 1-N, N-1, N-N Composition Classe association Accès en lecture aux objets (HQL, API Criteria et requêtes SQL) Le pattern Lazy Loading Usage de HQL Usage de l'api Criteria Usage des SQL Query Accès en lecture aux objets (HQL, API Criteria et requêtes SQL) Principe de persistance transitive Attachement / détachement des objets d'une session Supprimer une grappe d'objets Gestion des transactions Rappel sur la notion de transaction Transaction et concurrence d'accès Niveaux d'isolation Stratégies de contrôle de la concurrence Gestion optimiste Gestion pessimiste Notion de transaction utilisateur Architecture et Hibernate Architecture d'hibernate Comment gérer la session Hibernate (pattern du ThreadLocal) Comment programmer des règles métiers (frontière métier / accès aux données) Usage du Pattern Data Access Object (DAO) avec Hibernate
Comment gérer les transactions utilisateurs avec Hibernate Intégrer Hibernate dans une application web. Réalisation du TP6 (codage d'un cas d'utilisation complexe) Introduction à Spring Concepts de conteneur léger Vue d'ensemble et exemples d'utilisation Pattern "Inversion de Contrôle (IoC) ; Injection de dépendance" Tests unitaires en isolation Approche MVC avec Spring MVC Mise en oeuvre de Spring Les Beans, BeanFactory et ApplicationContext Modes singleton ou prototype Gestion des propriétés, "collaborators" Méthodes d'injection de dépendance Configuration de Beans spécifiques à Spring, cycle de vie Définition de Bean abstrait et héritage Spring et l'accès aux données (JDBC et Hibernate) Pattern DAO avec JDBC et les Classes abstraites de Spring Configuration de la SessionFactory d'hibernate dans le contexte d'application Spring IoC : Hibernate Template et Hibernate Callback Implémentation DAO avec les APIs Hibernate Démarcation de transactions par programmation et déclaration Support de Spring pour les Tests Concepts de l'extreme programming Tests unitaires et test d'intégration Indépendance de Spring vis à vis des outils de test Apports de Spring : Cache de l'applicationcontext, Injection de données de test, et rollback des transactions Programmation orientée aspect Concepts de l'aop Terminologie utilisée : aspect, joinpoint, advice, shortcut, weaving Les différents types d' «advice» : around, before, throws, after Objectifs et fonctionnalités AOP de Spring
Intégration avec le framework AspectJ Avant et après la formation Parce ce que la formation est un moment privilégié de sa carrière professionnelle, la pédagogie ne s arrête pas à un stage de quelques jours. Ainsi en vous inscrivant à une formation Clever-Institut, vous bénéficiez de l ouverture d un compte sur notre site internet vous permettant de : exprimer, en amont du stage, vos attentes quant à cette formation, afin de nous permettre de personnaliser chacune de nos sessions déjeuner avec le formateur et les autres stagiaires, afin de transformer ce moment en partage et retours d expérience évaluer la formation sur son contenu et sa pédagogie, et en partager le contenu avec les futurs stagiaires échanger avec votre formateur pendant les 15 jours qui suivent votre stage, pour toute question ou interrogation en rapport avec formation Comment s inscrire? La demande d'inscription à une session de formation se fait en ligne. Une fois votre inscription enregistrée, vous recevez dans les 48heures la Convention de Formation Professionnelle Continue simplifiée. Dès réception par nos services, de la convention signée, la convocation de stage est envoyée par mail aux stagiaires qui se voient ouvrir un compte sur notre site internet, leur permettant de préparer leur formation (accès, communication de leurs attentes, etc.). A noter, que l'inscription est considérée comme définitve, à la signature de la convention de stage. Clever Institut L institut de formation continue des professionnels du web Numéro agrément formation : 91 34 07449 34 37, boulevard des Capucines 75002 PARIS E-mail : info@clever-institut.com