IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Web en Java Discussion :

Où placer des traitements liés à des EJB3


Sujet :

Développement Web en Java

  1. #1
    Futur Membre du Club
    Inscrit en
    janvier 2013
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : janvier 2013
    Messages : 18
    Points : 7
    Points
    7
    Par défaut Où placer des traitements liés à des EJB3
    Bonjour,

    Je suis débutant en tout ce qui est developpement web en Java, j'utilise pour mon application de gestion des approvisionnements, des EJB3 et JPA.

    Après avoir fait la couche persistance et généré mes tables, j'ai crée mes DAO et leurs interfaces remote et local, avec les méthodes de CRUD.

    J'ai implémenté ces méthodes, maintenant je suis un peu perdu, j'aimerais avoir d'autres fonctionnalités pour mes Entity, comme le calcul de stock, ou le mouvement des entrées et sorties.

    Je ne sais pas trop où mettre ces méthodes, est-ce que je dois créer une nouvelle couche "métier" et y mettre tout ce qui n'est pas CRUD ? Ou bien est-ce possible de faire ça dans les DAO ?

    Merci d'avance pour pour vos réponses.

  2. #2
    Membre émérite
    Avatar de olivier.pitton
    Homme Profil pro
    Développeur Java
    Inscrit en
    juin 2012
    Messages
    355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juin 2012
    Messages : 355
    Points : 2 813
    Points
    2 813
    Par défaut
    Cela va dans les EJB. Ce que tu appelles DAO, je l'appelle service. Tout comme tu offres des services de recherche / ajout / ... pour un type de données, tu peux offrir le service de calcul de stock.

    Donc, tu mets cela dans tes DAO, si tes DAO sont bel et bien des EJB (@stateless, ...).

  3. #3
    Membre actif
    Profil pro
    aucune
    Inscrit en
    juillet 2007
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : juillet 2007
    Messages : 134
    Points : 279
    Points
    279
    Par défaut
    Jette un coup d'oeil sur le pattern Repository qui est une sorte de Rich-DAO pattern

  4. #4
    Futur Membre du Club
    Inscrit en
    janvier 2013
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : janvier 2013
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Oui, mes DAO sont bel et bien des EJB.

    theshold vous pouvez me conseiller un tuto bien détérminé ??

  5. #5
    Membre confirmé Avatar de bruneltouopi
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    janvier 2010
    Messages
    308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : janvier 2010
    Messages : 308
    Points : 466
    Points
    466
    Par défaut
    bien sur on peut bel et bien mettre des traitements dans les sessions stateless qui sont ici comme tes DAO.

    Mais pour moi je prefère mettre dans les DAO des fonctions spécifiques aux entités précises donc si j'ai entité toto dans la dao de toto il y'aura que des fonctions pour toto.
    mais je crees maintenant des interfaces qui auronts des fonctions pour mes traitements.et ces interfaces sont implémentés par des sessions beans.
    C'est cela que j'appelle couche métier.

    mais bon tout cela dépend de ton architecture et du pattern choisi.
    Ce qui ne me tue pas me rend plus fort.

  6. #6
    Futur Membre du Club
    Inscrit en
    janvier 2013
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : janvier 2013
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Merci brunel pour la réponse, oui moi aussi j'ai opté pour cette architecture.

    Comme j'ai dis, j'ai comme application gestion des approvisionnement, je vais commencer la couche métier qui a pour but le traitement sur les stock, les entrées sorties, ma question manitenent est ce que dans la couche métier, quand je vais par exemple calculer le stock minimal ou des trucs de ce genres, j'utilise des méthodes simples de Java dans les sessions beans.

  7. #7
    Membre confirmé Avatar de bruneltouopi
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    janvier 2010
    Messages
    308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : janvier 2010
    Messages : 308
    Points : 466
    Points
    466
    Par défaut
    Citation Envoyé par DarkVador85 Voir le message
    ma question manitenent est ce que dans la couche métier, quand je vais par exemple calculer le stock minimal ou des trucs de ce genres, j'utilise des méthodes simples de Java dans les sessions beans.
    Oui les services sont un ensemble de méthodes que tu as identifié qui sont donc des traitements.Comme par exemple dans ton cas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public IGestionStockService{
     
    public void calculerStockMinimal();
    public boolean checkArticleDispo(Article a);
    public void approvisionner(List<Article> listeA);
     
    ......
     
    }
    @Stateless
    public class GestionStockServiceBean implements IGestionStockService{}
    Ce qui ne me tue pas me rend plus fort.

Discussions similaires

  1. DELETE via des synonymes et des serveurs liés
    Par Marty000 dans le forum Développement
    Réponses: 6
    Dernier message: 17/02/2011, 10h52
  2. [JUnit] Effectuer des tests sur des traitements de fichiers
    Par Baptiste Wicht dans le forum Tests et Performance
    Réponses: 3
    Dernier message: 12/03/2010, 19h10
  3. Réponses: 0
    Dernier message: 24/11/2009, 12h36
  4. Réponses: 7
    Dernier message: 25/05/2009, 13h29
  5. Réponses: 3
    Dernier message: 23/01/2007, 09h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo