Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo utilizar el interceptor springmvc

Cómo utilizar el interceptor springmvc

Interceptores en SpringMVC Los interceptores también son muy importantes y útiles. Su función principal es interceptar las solicitudes de los usuarios y procesarlas en consecuencia. Por ejemplo, se puede utilizar para verificar permisos, determinar si el usuario ha iniciado sesión o determinar si la hora actual es la hora de compra del billete, como 12306.

Primero, defina la clase de implementación del interceptor.

El interceptor en SpringMVC intercepta solicitudes a través de HandlerInterceptor. Definir un interceptor en SpringMVC es muy simple. Hay dos formas principales. La primera forma es definir una clase interceptora que implemente la interfaz HandlerInterceptor de Spring, o que esta clase herede de una clase que implemente la interfaz HandlerInterceptor. Por ejemplo, Spring ha proporcionado un adaptador handlerinterceptor de clase abstracta, que implementa la interfaz HandlerInterceptor; la segunda forma es implementar la interfaz WebRequestInterceptor de Spring o heredar la clase que implementa WebRequestInterceptor.

(1) Implementación de la interfaz HandlerInterceptor

La interfaz HandlerInterceptor define tres métodos a través de los cuales interceptamos las solicitudes de los usuarios.

(1) método de prehandle (solicitud de servlet http, respuesta de servlet http, identificador de objeto), como sugiere el nombre, este método se llamará antes de procesar la solicitud. Los interceptores en SpringMVC se llaman en cadena y pueden existir varios interceptores en una aplicación o en una solicitud al mismo tiempo. Cada llamada al interceptor se ejecutará secuencialmente en el orden en que se declaró. El método preHandle en el interceptor se ejecuta primero, por lo que puede realizar algunas operaciones de preinicialización o preprocesar la solicitud actual en este método, o puede hacer algunos juicios. para decidir si la solicitud debe continuar. El valor de retorno de este método es booleano. Cuando devuelve falso, significa que la solicitud ha finalizado y los interceptores y controladores posteriores no se ejecutarán. Cuando el valor de retorno sea verdadero, continuará llamando al método preHandle del siguiente interceptor. Si ya lo es