Maison > Java > javaDidacticiel > le corps du texte

Processus détaillé de création de l'environnement SpringMVC

不言
Libérer: 2018-09-26 14:45:02
original
3018 Les gens l'ont consulté

Cet article vous présente le processus détaillé de création de l'environnement SpringMVC. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.

Spring MVC fournit un excellent framework Web basé sur le concept de conception MVC pour la couche de présentation. Il s'agit actuellement de l'un des frameworks MVC les plus courants.

Après Spring 3.0, il a complètement dépassé Struts2 et est appelé le meilleur framework MVC. Après avoir appris SpringMVC, vous ressentirez la cruauté que Struts2 vous apporte en un instant.

Spring MVC utilise un ensemble d'annotations MVC pour faire de POJO un contrôleur pour le traitement des requêtes. Il n'est pas nécessaire d'implémenter d'interface et le degré de couplage est faible.

Et Spring MVC offre un bon support pour le style de repos. .

Utilise une structure de composants enfichables faiblement couplés, qui est plus extensible et flexible que les autres frameworks MVC.

Créez un environnement Spring MVC

1) Créez un environnement MVC basé sur la méthode d'interface. Implémentez l'interface du contrôleur pour implémenter MVC

2) Sur la base de la méthode d'annotation, dans Spring 3.0 et les versions ultérieures, l'utilisation d'annotations simplifie grandement la configuration MVC traditionnelle, et la flexibilité et la maintenabilité sont grandement améliorées.

Pour implémenter SpringMVC, la première étape consiste à importer le package jar correspondant

Ensuite, c'est avec Struts2 également configurer un contrôleur principal dans Web.xml. Utilisé pour intercepter les requêtes.

<!-- 配置SpringMVC的请求的Servlet -->
  <servlet>
          <servlet-name>DispatcherServlet</servlet-name>
              <servlet-class>
                  org.springframework.web.servlet.DispatcherServlet
            </servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:applicationContext.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
 </servlet>
  <servlet-mapping>
      <servlet-name>DispatcherServlet</servlet-name>
      <url-pattern>/</url-pattern>
  </servlet-mapping>
Copier après la connexion

Vous sentez-vous familier lorsque vous voyez cela, ce ne sont que quelques lignes de plus que Struts2. init-param est le fichier Spring à charger lors de l'initialisation. S'il y a plusieurs fichiers, vous pouvez utiliser des virgules pour les séparer

load-on-startup sera chargé immédiatement au démarrage. /Intercepter toutes les demandes. (En même temps, css et js seront également interceptés)

Ensuite, nous écrivons un Controller

package com.miya.spring.mvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/Miya")
public class MiyaHelloController {

    @RequestMapping("/hello")
    public String hello(){
        System.out.println("hello Miya");
        return "/hello";
    }
}
Copier après la connexion

Annotation @Controller Sans plus tarder, déclarons un contrôleur.

@RequestMapping est défini sur la classe pour déclarer un espace. Au-dessus de la méthode, déclarez un chemin de requête

et renvoyez une chaîne Où est le chemin auquel vous souhaitez accéder ?

<context:component-scan base-package="com.miya.spring.mvc"/>
    
    <!-- 视图解析器 -->
    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!-- 前缀 -->
        <property name="prefix" value="/WEB-INF/views"/>
        <!-- 后缀 -->
        <property name="suffix" value=".jsp"/>
    </bean>
Copier après la connexion

Dans notre configuration Spring XML, nous analysons d'abord toutes les annotations, puis configurons un analyseur de vue.

Quand nous renvoyons ce bonjour, c'est préfixe + résultat(bonjour) + suffixe pour accéder à notre vue.

Essayons maintenant de l'exécuter directement dans index.jsp.

<%
response.sendRedirect(request.getContextPath() + "/Miya/hello");    
%>
Copier après la connexion

request.getContextPath() obtient le chemin racine de votre projet Web, qui est webContent (webRoot dans MyEclipse). Ensuite, vous pouvez maintenant voir notre espace de noms Miya suivi du chemin de requête de méthode

hello qui y est défini. L'adresse que nous avons finalement visitée http://localhost:8080/SpringMvcDemo1/Miya/hello a accédé au fichier WEB-INF/views/hello.jsp. Et cette demande est toujours une demande de style repos.

Quand vous arriverez ici, vous constaterez que c'est beaucoup plus pratique que Struts2. Chaque demande de configuration dans Struts2 nécessite que vous configuriez de nombreuses actions dans Struts2, et parfois il y a des milliers de lignes dans le fichier stuts. , et vous êtes trop vieux pour en trouver un. La demande a pris une demi-heure.

Une autre façon de l'implémenter est d'implémenter l'interface Controller fournie par Spring et de réécrire les méthodes dans l'interface.

package com.miya.spring.mvc.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class MiyaWordController implements Controller{
    @Override
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.setViewName("/hello");
        return modelAndView;
    }
}
Copier après la connexion

Vous pouvez définir la vue dans ModelAndView. Ce que j'ai défini, c'est bonjour. Ensuite, nous devons configurer un bean au printemps. XML. , name est le chemin de la requête, class est la classe du contrôleur spécifiée

<bean name="/Miya/word" class="com.miya.spring.mvc.controller.MiyaWordController"></bean>
Copier après la connexion

Remarque : nous avons intercepté toutes les requêtes du projet, ce qui entraînera des images, des styles. , et JS pour être bloqué Rapport 404, nous pouvons utiliser spring. Les fichiers de ressources externes sont introduits dans XML, et cette façon d'implémenter les interfaces entraîne un couplage trop élevé, et chaque fonction doit être écrite dans une classe, ce qui rend notre code volumineux. Il est donc recommandé d'utiliser des annotations actuellement. populaire. Et de nombreux frameworks prennent en charge les méthodes d'annotation, et la syntaxe est simple, ce qui rend le code concis.

<!-- 引入外部样式 -->
<mvc:resources location="/css/" mapping="/css/**"></mvc:resources>
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal