solicitud de reenvío
La solicitud del navegador se emite sólo una vez, en respuesta a la recepción de una
petición hacia adelante al recurso 2 puede solicitar directamente los datos transportados en la
ruta de solicitud 3. La barra de direcciones del navegador se presenta por el usuario
solamente 4 saltar a los recursos que se aplican actualmente
servlet1
request.setCharacterEncoding("utf-8");
String name = request.getParameter("name");
String age = request.getParameter("age");
System.out.println(name);
System.out.println(age);
request.getRequestDispatcher("other").forward(request, response);
servlet2
String name=request.getParameter("name");
String age = request.getParameter("age");
System.out.println("name="+name+" age="+age);
response.setContentType("text/html;charset=utf-8");
response.getWriter().write(name+age+"this is pages");
redirección
La petición del navegador se emite dos veces, recibió dos respuestas
2. Los recursos no pueden ser redirigidos a que presente el usuario escribe una solicitud directamente a los datos de
ruta de solicitud 3. La barra de direcciones del navegador se redirige, en lugar de usuario somete una petición camino. Puede prevenir formulario de envío duplicado.
4. redirección puede saltar a otros recursos no sólo la aplicación actual, también puede saltar a los recursos de otras aplicaciones.
5. servidores de redirección pueden reducir el consumo de recursos.
un servlet
request.setCharacterEncoding("utf-8");
String name = request.getParameter("name");
String age = request.getParameter("age");
System.out.println(name);
System.out.println(age);
name = URLEncoder.encode(name, "utf-8");//解决重定向时的乱码问题:编码
response.sendredircect("other");
otra Servet
String name=request.getParameter("name");
String age = request.getParameter("age");
name = URLDecoder.decode(name, "utf-8");//解码
System.out.println("name="+name+" age="+age);
response.setContentType("text/html;charset=utf-8");
response.getWriter().write(name+age+"this is pages");