“Conocimientos Programación>Programación Java

Redireccionar Vs . Avanzar en Java

2011/5/23
El lenguaje de programación Java es ampliamente utilizado para la programación en el escritorio , móviles y entornos de servidores . Cuando un usuario envía los datos de un formulario o hace clic en el enlace a una dirección web , los programadores de Java pueden utilizar la clase Servlet para determinar la aplicación de servidor responde a esta solicitud. Un servlet puede proporcionar respuestas a través de reorientación y reenviar. Es importante para los programadores de Java para entender las similitudes y las diferencias entre los dos métodos , y para saber cuál utilizar en función de sus necesidades. Similitud

Tanto el reenvío y redirigir proporciona una manera que permite que un servlet de Java para transferir el tratamiento de los datos de usuario a otro controlador en una aplicación web . En el patrón modelo - vista-controlador que se utiliza comúnmente para aplicaciones Web Java , un controlador puede interactuar con otros controladores y gestiona las interacciones entre los puntos de vista y los modelos . Por lo general, un controlador es otro Servlet Java, pero también puede ser una página JSP.
Diferencias

La acción de reenvío se realiza en el lado del servidor y es transparente para el explorador Web en el lado del cliente . Esto significa que la dirección URL en la barra de direcciones del explorador Web no cambia cuando se produce el reenvío . Por el contrario , la acción redirigir se realiza en el lado del cliente . Redireccionar ocurre en dos etapas ya que el servidor tiene que indicar al navegador web en el lado del cliente para ir a buscar otra dirección que se está redirigiendo a . Como resultado , la dirección URL en la barra de direcciones cambiará después de redirigir . Por otra parte , la expedición no se puede hacer a otra URL situado fuera de la aplicación Web ya reorientarlas se puede hacer a cualquier sitio ubicados en cualquier parte . Utiliza
Usos

Forwarding la RequestDispatcher clase que se obtiene a partir del método de la Servlet " ) getServletContext ( " . Para avanzar , el método " forward () " de la "clase RequestDispatcher se llama , por ejemplo , el siguiente código hará llegar la respuesta a otra página llamada result.jsp : .

Destino String = " /WEB -INF /pages /result.jsp ";

RequestDispatcher rd = getServletContext () getRequestDispatcher (destino ) ; .

rd.forward ( solicitud, respuesta ) ;

Redirigir utiliza el " sendRedirect ()" método del objeto de respuesta , que se obtiene de la clase Servlet actual Por ejemplo , el siguiente código redireccionará la respuesta a otra página llamada destination.jsp : .

destino String = " /jsp /destination.jsp " ;

response.sendRedirect ( response.encodeRedirectURL (destino ));
Consideraciones

La operación reorientación es ligeramente más lento que el reenvío ya que el navegador web necesita para llevar a cabo dos operaciones para ir a buscar la dirección de antes y después de la reorientación . Además , los objetos de transmisión en el ámbito solicitud original todavía están disponibles durante el avance , sino que se pierde durante la reorientación . Como tal , la reorientación debe utilizarse sólo cuando se permite que el navegador para recargar la dirección resultante después de redirigir . En otros casos , se debe utilizar el reenvío .

Programación Java
Java Descripciones Excepción
Está Java fuertemente tipado importante
Cómo hacer juegos Java
Cómo insertar en una matriz de tres dimensiones usando Java
Cómo visualizar información dinámica en páginas Web con JavaServer Faces
Cómo obtener el año actual en Java
Cómo copiar entradas flujos de salida en Java
Cómo dar formato a método devuelve con comas en Java
Conocimientos Informáticos © http://www.ordenador.online