L'architecture JavaEE se compose de quatre couches, de haut en bas : la couche application, la couche Web, la couche métier et la couche de persistance. Struts et SpringMVC sont les frameworks de la couche Web, Spring est le framework de la couche métier et Hibernate et MyBatis sont les frameworks de la couche de persistance.
Pourquoi utiliser SpringMVC ?
Le problème avec de nombreuses applications est qu'il existe un couplage étroit entre les objets qui traitent les données métier et les vues qui affichent les données métier. Généralement, les commandes de mise à jour des objets métier sont lancées à partir de la vue elle-même. , ce qui rend la vue Toute modification d'un objet métier est très sensible. De plus, il n'y a aucune flexibilité lorsque plusieurs vues dépendent du même objet métier.
SpringMVC est un framework Web léger basé sur Java qui implémente le modèle de conception Web MVC et est piloté par les requêtes. Il utilise l'idée du modèle architectural MVC pour découpler les responsabilités de la couche Web. Piloté par les requêtes signifie utiliser le modèle requête-réponse. Le but du framework est de nous aider à simplifier le développement. SpringMVC vise également à simplifier notre développement Web quotidien.
Modèle de conception MVC
La tâche du modèle de conception MVC est de découpler le module contenant les données métier de la vue qui affiche le module. Comment est-ce arrivé ? L'introduction d'une couche de redirection entre le modèle et la vue peut résoudre le problème. Cette couche de redirection est le contrôleur qui recevra la demande, effectuera l'action de mise à jour du modèle, puis informera la vue du changement de modèle.
Processus spécifique :
(1) Tout d'abord, l'utilisateur envoie une requête——>DispatcherServlet Après avoir reçu la requête, le contrôleur frontal ne traite pas. il, mais le délègue à D'autres analyseurs effectuent le traitement en tant que point d'accès unifié pour le contrôle global du processus
(2) DispatcherServlet——>HandlerMapping, le mappeur de processeur mappera la requête à un objet HandlerExecutionChain (contenant un Handler) Objet Processeur, plusieurs intercepteurs HandlerInterceptor) ;
(3) DispatcherServlet——>HandlerAdapter, l'adaptateur de processeur enveloppera le processeur en tant qu'adaptateur pour prendre en charge plusieurs types de processeurs, c'est-à-dire l'application du modèle de conception d'adaptateur facilite la prise en charge de nombreux types de processeurs ;
(4) HandlerAdapter——> Appelez la méthode de traitement de fonction correspondante du processeur et renvoyez un objet ModelAndView (contenant les données du modèle, le nom de la vue logique
) ;(5) Objet ModelAndView (la partie Model correspond aux données de modèle renvoyées par l'objet métier, la partie View est le nom de la vue logique) -> ViewResolver, le résolveur de vue analysera le nom de la vue logique dans une vue spécifique
(6) Vue -> Rendu, la vue sera rendue en fonction des données du modèle de modèle entrantes. Le modèle ici est en fait une structure de données de carte (7) Renvoyez le contrôle à DispatcherServlet et DispatcherServlet. renvoie une réponse à l'utilisateur. C'est la fin du processus.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!