Architecture Architecture JEE Principe de l ? inversion de contrôle et d ? injection des dépendances Mohamed Youss ? Laboratoire Signaux Systèmes Distribués et Intelligence Arti ?cielle SSDIA ENSET Université Hassan II Casablanca Maroc Email med youss ? n

Architecture JEE Principe de l ? inversion de contrôle et d ? injection des dépendances Mohamed Youss ? Laboratoire Signaux Systèmes Distribués et Intelligence Arti ?cielle SSDIA ENSET Université Hassan II Casablanca Maroc Email med youss ? net CClient HTTP Html CSS Java Script Requête HTTP Réponse HTTP HTML CSS Java Script Serveur Web PHP JEE Dot Net Node JS SGBD Un client web Browser communique avec le serveur web Apache en utilisant le protocole HTTP Une application web se compose de deux parties La partie Backend S ? occupe des traitements e ?ectués coté serveur Technologies utilisées PHP JEE Net Node JS La partie Frontend S ? occupe de la présentations des IHM coté Client Langages utilisés HTML CSS Java Script La communication entre la partie Frontend et la partie backend se fait en utilisant le protocole HTTP CExigences d ? un projet informatique Exigences Fonctionnelles Satisfaire les besoins fonctionnels métiers de l ? entreprise Exigences Techniques Performances l ? application doit être performante Temps de réponse Problème de montée en charge Vers une architecture Distribuée scalable Equilibrage de charges et Tolérances aux panes Maintenance l ? application doit être facile à maintenir Une application doit évoluer dans le temps L ? application doit être fermée à la modi ?cation et ouverte à l ? extension Sécurité L ? application doit prévoir des solutions pour toutes les failles de sécurités Persistances des données dans des SGBD appropriés Gestion des Transactions Créer di ?érents types de clients pour accéder à l ? application Web Mobile Desktop ? ? Exigences ?nancières Le coût du logiciel doit respecter les contraites budgétaires CConstat Il est très di ?cile de développer un système logiciel qui respecte ces exigences sans utiliser l ? expérience des autres B? tir l ? application sur une architecture d ? entreprise JEE Framework pour l ? Inversion de contrôle Permettre au développeur de s ? occuper uniquement du code métier Exigences fonctionnelles et c ? est le Framework qui s ? occupe du code technique Exigences Techniques Spring Conteneur léger EJB Conteneur lourd Frameworks Mapping objet relationnel ORM JPA Hibernate Toplink ? Applications Web Struts JSF SpringMVC Middlewares Communication Synchrone RMI CORBA Applications distribuées Web Services A RMI CORBA SOAP REST B JAXWS pour Web services SOAP Communication JAXRS pour les Web services RESTful Communication asynchrone entre les application Asynchrone ?? Broker ?? JMS AMQP A JMS AMQP Rabbit MQ Active MQ JMS B AMQP ?? ?? CExemple sans utiliser d ? inversion de contrôle public void virement int c int c double mt Création d ? une transaction EntityTransaction transaction entityManager getTransaction Démarrer la transaction transaction begin try Code Technique Code métier retirer c mt verser c mt Code Métier Valider la transaction transaction commit Code Technique catch Exception e Annuler la transaction en cas d ? exception transaction rollback e printStackTrace med youss ? net ENSET Université Hassan II CExemple en utilisant l ? inversion de contrôle Transactional public void virement int c int c double mt

  • 41
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Jan 30, 2022
  • Catégorie Business / Finance
  • Langue French
  • Taille du fichier 83.8kB