Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Architecture Multi Module Maven]

Instanciation de la DAO Factory

Sujet résolu
    20 septembre 2017 à 11:03:39

    Bonjour à tous,

    En codant une application multi module sous Maven un soucis "conceptuel" me dérange en ayant lu le tuto sur le développement d'une appli JavaEE, et particulièrement la partie concernant BoneCP et l'utilisation de pool de connexion.

    Concernant la DAO factory en elle même aucun soucis je comprends bien, tous fonctionne.

    Ce qui me dérange c'est que l'instanciation de la DAOFactory dans ce tuto se fait dans le module de l'appli WEB, qui du coup par la même occasion casse le principe du multi module ou chaque module ne connait que son module fils (mise à par la couche model).

    Existe-t-il une méthode plus "propre" pour que l'appli WEB n'est pas connaissance du module consumer?

    Je sais pas si je suis très clair dans mes propos.

    Merci d'avance pour vos réponses et bonne journée au passage.
    • Partager sur Facebook
    • Partager sur Twitter
      20 septembre 2017 à 11:57:18

      Bonjour,

      Du fait des dépendances transitives, tu as accès à toutes les classes des dépendances des dépendances ...

      Une solution pourrait être :
      - projet de service/DAO ou autre, utilisé :
      ** déclarer les interfaces dans un projet ("API")
      ** faire l'implémentation dans un autre projet ("impl")
      - le projet utilisateur (par exemple webapp) :
      ** dépendance vers le projet "API" : ne manipulera que les interfaces
      ** dépendance vers le projet "impl" : de mémoire je ne sais pas trop comment faire ça avec Maven uniquement au moment du packaging
      Problème : cette solution est plutôt basée sur l'injection de dépendance (qui fait le lien entre interface et implémentation).
      Il faudra donc le faire manuellement, ou t'en passer pour le moment en attendant de faire du (vrai) Java EE ou Spring ou autre.

      • Partager sur Facebook
      • Partager sur Twitter
      Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
        20 septembre 2017 à 12:07:23

        Pinguet62 a écrit:

        ** dépendance vers le projet "impl" : de mémoire je ne sais pas trop comment faire ça avec Maven uniquement au moment du packaging


        Je dirait qu'il doit s’agir du scope runtime (Pas nécessaire à la compilation, mais nécessaire à l’exécution).

        Pour info: https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

        Paragraphe Dependency scope

        • Partager sur Facebook
        • Partager sur Twitter
          20 septembre 2017 à 14:01:16

          florent m a écrit:

          Pinguet62 a écrit:

          ** dépendance vers le projet "impl" : de mémoire je ne sais pas trop comment faire ça avec Maven uniquement au moment du packaging


          Je dirait qu'il doit s’agir du scope runtime (Pas nécessaire à la compilation, mais nécessaire à l’exécution).

          Pour info: https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

          Paragraphe Dependency scope

          Exactement, merci pour ton aide !
          • Partager sur Facebook
          • Partager sur Twitter
          Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
            20 septembre 2017 à 14:08:06

            Merci beaucoup de vos réponses messieurs :)
            • Partager sur Facebook
            • Partager sur Twitter

            [Architecture Multi Module Maven]

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown