English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Servlet-Webseitenumleitung

Wenn ein Dokument an eine neue Position verschoben wird und wir dieser neuen Position an den Client mitteilen müssen, verwenden wir die Umleitung der Webseite. Natürlich kann dies auch aus Gründen der Lastverteilung oder einfach aus zufälligen Gründen geschehen, in diesen Fällen kann die Umleitung der Webseite verwendet werden.

Die einfachste Möglichkeit, eine Umleitung zu einer anderen Webseite durchzuführen, ist die Verwendung der Methode sendRedirect() des Response-Objekts. Hier ist die Definition dieser Methode:

public void HttpServletResponse.sendRedirect(String location)
throws IOException

Diese Methode sendet die Antwort zusammen mit dem Statuscode und der neuen Webseitenposition an den Browser zurück. Sie können auch durch die Kombination von setStatus() und setHeader() denselben Effekt erzielen:

....
String site = "http://de.oldtoolbag.com";
response.setStatus(response.SC_MOVED_TEMPORARILY);
response.setHeader("Location", site); 
....

Online-Beispiel

Dieses Beispiel zeigt, wie ein Servlet eine Seitenumleitung zu einer anderen Position durchführt:

package com.w3codebox.test;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet Implementierungsklasse PageRedirect
 */
@WebServlet("/PageRedirect)
public class PageRedirect extends HttpServlet{
    
  public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
            throws ServletException, IOException
  {
      // Antwortinhaltsart festlegen
      response.setContentType("text/html;charset=UTF-8");
      // neue Position zur Umleitung
      String site = new String("http://de.oldtoolbag.com");
      response.setStatus(response.SC_MOVED_TEMPORARILY);
      response.setHeader("Location", site);    
    }
}

Lassen Sie uns nun den obigen Servlet kompilieren und den folgenden Eintrag in der Datei web.xml erstellen:

....
 <servlet>
     <servlet-name>PageRedirect</servlet-name>
     <servlet-class>PageRedirect</servlet-class>
 </servlet>
 <servlet-mapping>
     <servlet-name>PageRedirect</servlet-name>
     <url-pattern>/TomcatTest/PageRedirect</url-pattern>
 </servlet-mapping>
....

Jetzt durch die URL http://localhost:8080/PageRedirect um diesen Servlet aufzurufen. Dies wird Sie zur angegebenen URL http://de.oldtoolbag.com。