La necesidad de implementar filtros se puede entender con la ayuda de algunos ejemplos. Tomemos el ejemplo de una aplicación web que formatea los datos para presentarlos a los clientes en un formato específico, por ejemplo, Excel. Sin embargo, en un momento posterior, los clientes pueden requerir datos. en algún otro formato, como lenguaje de marcado de hipertexto (HTML), formato de documento portátil (PDF) o Word. En tal situación, en lugar de modificar el código cada vez para cambiar el formato de los datos, se puede crear un filtro para transformar los datos dinámicamente en los formatos requeridos.
Consideremos otro ejemplo en el que un desarrollador crea una aplicación web en la que un servlet gestiona los inicios de sesión de los usuarios. Esto implica que cuando un usuario envía sus credenciales, el servlet verifica las credenciales con la información del usuario. El servicio también crea una sesión para el usuario, por lo que los otros componentes de la aplicación también pueden usar los detalles de la sesión del usuario. En un momento posterior, el desarrollador puede requerir el mantenimiento de una entrada de inicio de sesión para cada intento de inicio de sesión del usuario en el sistema de registro del servidor de aplicaciones. Para implementar esto, el desarrollador necesitaría cambiar el código existente o agregar código adicional al servlet y volver a implementar la aplicación web.
En tal situación, un servlet, además de cumplir con su objetivo principal, que es aceptar requests y enviar respuestas a los clientes, debe implementar funcionalidades adicionales. Este servlet lo adicional reduce la eficiencia de la aplicación. Para superar este problema, se introdujeron filtros que pueden implementar estas funcionalidades adicionales, como verificar las credenciales de inicio de sesión y mantener el registro del servidor en una base de datos. Una de las características más llamativas de los filtros es que también se pueden reutilizar en otras aplicaciones web.
Algunas situaciones y tareas en las que se pueden utilizar filtros son las siguientes:
- Verificación de seguridad
- Validación de sesión
- Operaciones de registro
- internacionalización
- Activación de eventos de acceso a recursos
- Conversión de imagen
- Escalar mapas
- Compresión de datos
- Cifrado
- Tokenización
- Cambio de tipo de mimo
- Almacenamiento en caché y transformaciones XSL de respuestas XML
- depuración
Elaboración de alguna situación donde se necesitan filtros:
- Modificación de la criptografía de caracteres de solicitud : actualmente, varios navegadores no envían datos de criptografía de caracteres dentro del encabezado de tipo de contenido de una solicitud de protocolo. Si una criptografía no ha sido tal por la solicitud del comprador, la instrumentación utiliza una criptografía predeterminada para analizar los parámetros de la solicitud. Si el comprador no ha configurado la criptografía de caracteres y la unidad de área de parámetros de solicitud codificada con una criptografía especial que la predeterminada, los parámetros se analizan incorrectamente. puede usar la estrategia setCharacterEncoding dentro de la interfaz ServletRequest para alinear la criptografía. Dado que esta técnica debe conocerse antes de analizar cualquier información de publicación o leer cualquier entrada de la solicitud, esta función puede ser una aplicación principal para los filtros.
- Reducir el tamaño de la respuesta : otro ejemplo de un filtro que modifica la respuesta es el filtro de compresión contenido en los ejemplos distribuidos con el motor de servlet de Tomcat. Aunque las conexiones de Internet de alta velocidad se están volviendo cada vez más comunes, todavía existe la necesidad de usar la medida de datos de manera efectiva. Un filtro de compresión es útil porque puede adjuntarlo a cualquier servlet para reducir la escala de una respuesta.
Publicación traducida automáticamente
Artículo escrito por romin_vaghani y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA