Bonjour à tous,
Ayant commencé depuis peu le J2EE et notamment en me servant de JSF, JPA (EclipseLink), j'aimerais développer une petite et simple application de gestion de stocks et de commandes.
Pour ce projet, je dispose donc d'une base de données de produits et mes "clients" peuvent commander ces produits en différentes quantités.
Pour mettre en situation, disons que je ne dispose que de 5 télévisions dans mon catalogue.
Il y a donc 3 situations possibles que je gère de la façon suivante :
1°) Un client commande 4 télévisions. Lorsqu'il clique sur le bouton 'commander', j'effectue donc un retrait de 4. Pour cela mon objet Produit (télévision) est mis à jour en faisant : produit.setQuantite(5-4). Et je mets à jour ma base de données (?) en faisant par l'intermédiaire de mon EntityManager em : em.merge(produit).
2°) Un client commande 10 télévisions. Mon application détecte que le client commande + qu'il n'y a en stock. J'affiche un message d'erreur en lui signalant.
3°) C'est ce troisième cas qui me pose soucis. 2 clients commandent en même temps des télévisions. Le client1 commande 4 télévisions et le client2 commande 2 télévisions.
Je voulais savoir comment était géré ce cas ? Est-ce que de tout de manière l'application ne va traiter qu'une requête à la fois ?
Si non, est ce que l'application va signaler à un des 2 clients un message d'erreur ?
Si ce problème doit être géré par le développeur, comment ?
En espérant que vous pourrez m'aider,
Rhada.
Partager