DispatcherServlet
procesa las solicitudes de la siguiente manera:
-
El
WebApplicationContext
se busca y vincula en la solicitud como un atributo que puede ser utilizado por el controlador y otros elementos del proceso. De forma predeterminada, está asociado con la claveDispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE
. -
El solucionador de configuración regional está vinculado a la solicitud para permitir que los elementos del proceso determinen la configuración regional que se utilizará al procesar la solicitud (visualización de representación, preparación de datos, etc.). Si no necesita reconocer su configuración regional, entonces no necesita un reconocedor de configuración regional.
-
Un solucionador de temas está vinculado a la solicitud para que elementos como las vistas puedan determinar qué tema usar. Si no se utilizan temas, puedes ignorarlo.
-
Si se especifica un reconocedor de archivos de varias partes, se comprobará la solicitud para detectar la presencia de elementos de varias partes. Si se encuentran elementos de varias partes, la solicitud se incluye en un
MultipartHttpServletRequest
para su posterior procesamiento por parte de otros elementos del proceso. -
Se produce una búsqueda de un controlador adecuado. Si se encuentra un controlador, se inicia la cadena de ejecución asociada con el controlador (preprocesadores, postprocesadores y controladores) para preparar el modelo para la renderización. Además, para los controladores anotados, la respuesta se puede representar (dentro de un
HandlerAdapter
) en lugar de devolver una vista. -
Si se devuelve un modelo, se representa la vista. Si no se devuelve el modelo (tal vez porque el preprocesador o posprocesador interceptó la solicitud, probablemente por razones de seguridad), la vista no se crea porque es posible que la solicitud ya se haya ejecutado.
Los beans HandlerExceptionResolver
declarados en WebApplicationContext
se utilizan para
reconocer excepciones que se generan al procesar una solicitud. Estos controladores de excepciones le permiten
personalizar la lógica de manejo de excepciones.
Para proporcionar almacenamiento en caché HTTP, los controladores pueden utilizar los métodos
CheckNotModified
de WebRequest
, así como opciones adicionales para controladores anotados.
Puede personalizar instancias individuales de DispatcherServlet
agregando parámetros de inicialización
del servlet (elementos init-param
) a la declaración del servlet en web.xml
. archivo. La
siguiente tabla enumera los parámetros admitidos:
Parámetro | Explicación |
---|---|
|
Una clase que implementa |
|
Una cadena que se pasa a la instancia de contexto (especificada por |
|
Espacio de nombres |
|
Controla si se debe lanzar una De forma predeterminada, este parámetro está establecido en Tenga en cuenta que si el procesamiento de servlet predeterminado también está configurado, las solicitudes no resueltas siempre se reenvían al servlet predeterminado y no se genera ningún mensaje 404. |