Skip to content

4. Conclusion

Rappelons ce que nous voulions faire. Nous voulions construire l'application web MVC à trois couches suivante :

  • le modèle était acquis. Il a été utilisé de façon identique par les trois solutions proposées
  • parce que l'indépendance des couches avait été scrupuleusement respectée, la couche [web] a pu être implémentée de trois façons différentes dans toucher au modèle. Nous n'avons travaillé que dans la seule couche [web].
  • les solutions sont proches. Là où dans la première solution, on avait une servlet unique avec une méthode par action à traiter, dans les deux autres solutions, on a également une servlet unique mais débarrassée des méthodes de traitement des actions, traitement assuré désormais par des classes séparées. Le rôle de celles-ci était identique à celui des méthodes de la première solution.
  • l'usage de [Spring] dans cette application nous laisse le choix des classes d'implémentation des interfaces Java des couches [domain] et [dao]. Ces classes d'implémentation pourraient être changées dans une couche, sans aucun impact sur les autres couches. Seul le fichier de configuration de Spring serait à changer. Ainsi, la couche [dao] assurée ici par l'outil [sqlMap] pourrait être assurée par l'outil [Hibernate]. Cela impacterait la couche [dao] mais aucunement les couches [web] et [domain].