dyrektywy JSP

Dostępny

5.1 obejmuje

Jest jeszcze kilka magicznych dyrektyw, o których chciałbym porozmawiać. Pierwszą taką dyrektywą jest dyrektywa include . Pozwala wstawić inny plik w miejsce strony, gdzie jest to wskazane. Ogólny format takiej dyrektywy to:

<%@ include file="url"%>

Możesz określić nie tylko plik, ale na przykład inny serwlet jsp, a nawet adres URL.

Przykład:

<%@ include file="header.jsp"%>

<%
    double num = Math.random();
    if (num > 0.95) {
        out.print(num);
    }
%>

<%@ include file="footer.jsp"%>

Możesz np. umieścić górną część wszystkich stron serwisu w header.jsp, a dolną w footer.jsp i zebrać wszystkie strony jako konstruktor.

5,2 do przodu

Pamiętasz, że klasyczne serwlety mają możliwość przekierowania lub przekazania do innego adresu URL? W JSP jest to również możliwe i jest na to specjalna akcja. Jego wygląd różni się nieco od tego, co widzieliście wcześniej:

<jsp:forward page="url"/>

Jest też opcja bardziej zaawansowana - z parametrami:

<jsp:forward page="url" >
    <jsp:param name="Name" value="meaning"/>
    <jsp:param name="Name" value="meaning"/>
    <jsp:param name="Name" value="meaning"/>
</jsp:forward>

Przykład:

<html>
   <head>
    <title>The Forward Example</title>
   </head>
   <body>
    <center>
        <h2> Forward example </h2>
        <jsp:forward page="login.jsp"/>
    </center>
   </body>
</html>

5.3 Przekierowanie

Nie ma specjalnej dyrektywy dotyczącej przekierowania, ale można to zrobić, wywołując kod Java.

Przykład:

<body>
    <%
        String redirectURL = "https://codegym.cc/";
        response.sendRedirect(redirectURL);
    %>
</body>

Ten przykład wyśle 302​​przekierowanie. Jeśli potrzebujesz 301przekierowania, musisz napisać jeszcze kilka linijek kodu:

<body>
    <%
        response.setStatus(301);
        response.setHeader("Location", "https://codegym.cc/");
        response.setHeader("Connection", "close");
    %>
</body>
Komentarze
  • Popularne
  • Najnowsze
  • Najstarsze
Musisz się zalogować, aby dodać komentarz
Ta strona nie ma jeszcze żadnych komentarzy