Projet JavaEE pour MBDS Haïti 2012-1013

De $1

Version de 00:28, 25 Avr 2024

cette version.

Revenir à liste des archives.

Voir la version actuelle

Sujet :un gestionnaire de compte bancaires en ligne

Vous allez réaliser un gestionnaire de comptes bancaires qui est la suite des TPs. Mais avec des relations clients-comptes-opérations bancaires, + gestion de connexion, beaucoup de données (plusieurs pages de comptes, de clients, etc)  et aussi que ce soit joli !

Réalisez le site d'une banque

Modifier la section

Vous complèterez le TP 4  sur les comptes bancaires, avec la contrainte de gérer les points suivants :

  1. Vous devrez gérer des sessions utilisateurs, avec connexion par login/password. Une fois loggé, les champs pour entrer le login et le password ne sont plus affichés, puisqu'une session est ouverte. Voir le projet d'exemple qui est sur la page du cours. Voir aussi le cours JSF2 sur les SessionScoped. Si on se loggue admin on a accès à toutes les fonctionnalités, à tous les comptes, à tous les utilisateurs. Si on se loggue en tant que client de la banque on a accès qu'à ses comptes, on peut déposer/retirer/transférer mais que sur ses comptes. On ne peut pas créer/supprimer de compte.
  2. Vous appliquerez un "layout" aux pages, avec un menu sur la gauche et un bandeau au-dessus, en utilisant les templates (cf tp2) ou bien des composants de layout de la librairie PrimeFaces (comme dans les démos en ligne sur primefaces.org)
  3. Vous devrez gérer plusieurs types de comptes bancaires, avec de l'héritage entre entity beans. Vous devrez proposer d'afficher tous les comptes ou seulement un type de compte particulier. Ex : compte courant, compte épargne avec un taux d'intérêt, compte joint qui a deux propriétaires, etc.Bien entendu, faire de l'héritage signifie que vous ne devez pas avoir une variable String type !!!! Ou une énumération quelconque avec écrit en dur le type de compte. Pour le compte courant, vous simulerez à l'aide d'un EJBTimer le fait que toutes les 10 secondes le compte rapporte de l'arge
  4. On pourra consulter ses propres comptes (en fonction du login/password), mais pas ceux des autres, lorsqu'on est connecté en tant qu'utilisateur "normal".
  5. On ne pourra transférer de l'argent qu'entre ses propres comptes bancaires. Vous utiliserez des listes pré-remplies ou des champs avec auto-complétion ou un autre système ergonomique. On ne veut pas ici de champs où on doit saisir les ids des comptes.
  6. L'administrateur (repéré par son login/password, prenez admin/admin par ex) est le seul qui peut créer des clients, des comptes, les supprimer, etc. Lui seul peut tout voir, tout faire.
  7. BONUS : l'affichage de la liste des comptes devra utiliser un système de "Lazy Loading" pour afficher les comptes dans une datatable, voir les exemples de datatables primefaces sur leur site. Si on a 500 comptes bancaires, on veut les afficher par exemple 10 par 10, chaque fois qu'on change de page on doit lancer une nouvelle requête. Dans la correction du TP3 de Goulby ou la correction du projet attachée à cette page, vous avez des exemples.
  8. J'aimerais au moins 4 pages de données: 40 comptes, 10 utilisateurs...
  9. BONUS : au moins 500 comptes bancaires et 50 utilisateurs, vous pourrez utiliser le site http://www.generatedata.com pour générer un .csv avec des comptes ou mieux, transformer le .csv en code Java pour inclure dans un EJB @SIngleton @Startup comme on a fait en TP. 

A propos des corrections attachées à cette page

La correction du projet de Scoffier correspond à tout ce qui vous est demandé. Vous pouvez étudier le code, vous en inspirer et intégrer à votre propre projet ce que vous trouvez dans les corrections. Simplement indiquez-le dans un petit rapport.

Je donne aussi des corrections des TPs, vous les avez eues sur la clé USB que je vous avais disrtribuée en cours.