Jsp'de Önceki Sayfanın İsmini Alma, Kendi Bulunduğun Sayfanın Url'ini Alma ve Başka Sayfaya Yönlendirme (Jsp Factory)

Jsp'de Önceki Sayfanın İsmini Alma
Merhaba arkadaşlar bu yazımda Jsp'de bir önceki sayfanın url'ini almayı anlatacağım. Aslında aşağıdaki algoritma bana ait çok fazla araştırma fırsatı bulamadım belki de java'nın aşağıdaki işlemi yapan kodu vardır. Şimdi Çalıştığım şirkette kullanılan bir yapı hakkında bilgi vermek istiyorum. Bu yapı factory yapısı aslında aşağıda anlatıklarım tam olarak bu işi yapma amacıyla yazılmıştır. Uzatmadan anlatmaya başlıyayım. Bir ana class'ımız olsun ve her sayfa bu ana class'a yönlendiriliyor. Ana class amacı ilgili sayfaya yönlendirme yapılabilmesidir. Bunun için gelen sayfa url'ini almamız ve sonra bu url'i sayfa yönlendirme ile ilgili sayfaya yönlendirmemizdir. Aslında factory bu. Umarım işinize yarar.

 String OncekiUrl= request.getHeader("Referer");
                int sayac = 0;
                for (int i = 0; i < OncekiUrl.length(); i++) {
                    if(OncekiUrl.charAt(i)=='/'){
                     sayac=i;
                    }
                }
                out.print(OncekiUrl.substring(sayac+1, OncekiUrl.length()-4));

Kendi Bulunduğun Sayfanın Url'ini Alma
String getURL=request.getRequestURL().toString();
Sayfa Yönlendirme İşlemi
response.sendRedirect("sayfa.jsp");

JSP FACTORY
public class DenemeFactory extends HttpServlet {
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {
       


/*Algoritmamızın başlangıç noktası*/


  String GetUrl = request.getHeader("Referer");
            int sayac = 0;
            for (int i = 0; i < GetUrl.length(); i++) {
                if (GetUrl.charAt(i) == '/') {
                    sayac = i;
                }
            }
            String Url = GetUrl.substring(sayac + 1, GetUrl.length() - 4);

            if (Url.equals("Login")) {
                response.sendRedirect("MainPage.jsp");
            } else {
                response.sendRedirect("SRM.jsp");

            }
        }
    }

/*Algoritmamızın bittiği yer*/


    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    @Override
    public String getServletInfo() {
        return "Short description";
    }

}

Yorumlar

Popüler Yayınlar