226 votes

Qu'est-ce que le Dispatcher Servlet dans Spring ?

Dans cette image (que j'ai obtenue de aquí ), HTTP envoie quelque chose à Dispatcher Servlet.

enter image description here

Ma question est la suivante : que fait Dispatcher Servlet faire ?

Est-ce que c'est quelque chose comme obtenir l'information lancée depuis la page web et la lancer vers le contrôleur ?

4voto

Anurag S Points 75

On peut dire que le servlet Dispatcher agit comme un point d'entrée et de sortie pour toute demande. Lorsqu'une requête arrive, elle est d'abord envoyée au Dispatcher Servlet (DS) où le DS essaie d'identifier sa méthode de gestion (les méthodes que vous définissez dans le contrôleur pour traiter les requêtes), une fois que le handler mapper (le DS demande au handler mapper) renvoie le contrôleur, le dispatcher servlet connaît le contrôleur qui peut traiter cette requête et peut maintenant aller à ce contrôleur pour compléter le traitement de la requête. Le contrôleur peut maintenant répondre avec une réponse appropriée, puis le DS va vers le résolveur de vues pour identifier l'emplacement de la vue. Une fois que le résolveur de vues l'a indiqué au DS, celui-ci saisit la vue et vous la renvoie comme réponse finale. J'ajoute une image que j'ai prise sur YouTube sur la chaîne Java Guides.

Dispatcher Servlet in Action

0voto

anjali shrivas Points 1

Le contrôleur du répartiteur est affiché dans la figure, toutes les demandes entrantes sont interceptées par le servlet du répartiteur qui fonctionne comme contrôleur frontal. Le servlet dispatcher obtient une entrée pour le mappage du gestionnaire à partir du fichier XML et transmet la demande au contrôleur.

-1voto

kartik Points 11
<?xml version='1.0' encoding='UTF-8' ?>
<!-- was: <?xml version="1.0" encoding="UTF-8"?> -->
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:p="http://www.springframework.org/schema/p"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
               http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">

    <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"/>
    <context:component-scan base-package="com.demo" />
    <context:annotation-config />

    <mvc:annotation-driven />

    <bean id="viewResolver"
          class="org.springframework.web.servlet.view.InternalResourceViewResolver"
          p:prefix="/WEB-INF/jsp/"
          p:suffix=".jsp" />

    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name="dataSource" ref="datasource" />
    </bean> 

          <bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />  
        <property name="url" value="jdbc:mysql://localhost:3306/employee" />
        <property name="username" value="username" />
        <property name="password" value="password" />
    </bean> 

</beans>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X