Active Server Pages,ActiveServerPages+,ASP,ASP+,aspx,VBScript,IIS,internet,intranet,programming,programowanie,XML,Extensible Markup Language,kurs,opis,HTML,Hypertext Markup Language,JScript,JavaScript,wyszukiwarka,znajdz,instrukcja,Stelmik,Stelmi,free,darmo,zadarmo,free,serwer,server,www,konta,PHP,perl,klient,uslugi,asp,sklep internetowy,sklepy internetowe,e-sklep,esklep,tworzenie stron internetowych,strony internetowe,strony www,tworzenie stron www,strony internetowe,web page,webpage,creating,Krzysztof Stelmach,Krzysztof,Stelmach,www.stelmach.info,www.asp.z.pl
 
Create your own social network!
IP: 18.205.109.152 
 
 JAVA SERVER PAGES / ELEMENTY SKRYPTU
Szukaj:  
Pon, 06.07.2020r.
KURSY » języki - serwer » Java Server Pages » Elementy skryptu
 

Elementy skryptu JSP pozwalają umieścić kod Javy wewnątrz servletu który jest generowany z bieżącej strony JSP. Mogą one przyjąć trzy formy:

  1. Wyrażenia w postaci <%= wyrażenie %>, które są przekazywane na wyjście (okno przeglądarki)
  2. Skryplety w postaci <% kod %>, które są umieszczane wewnątrz metody service servletu
  3. Deklaracje w postaci <%! kod %> które są umieszczane wewnątrz klasy (ciała) servletu, poza jakimikolwiek istniejącymi metodami.

Poniżej każde z nich zostaną opisane dokładniej.

1. Wyrażenia JSP

Wyrażenia JSP są używane w celu umieszczenia wartości bezpośrednio na wyjściu (oknie przeglądarki).
Oto przykład:

<%= Wyrażenie Javy %>

Wyrażenie Javy jest pobierane, konwertowane do łańcucha po czym umieszczane na stronie. Te elementy wykonywane są w czasie uruchomienia strony, kiedy jest ona wywoływana (np. przez przeglądarkę) i dlatego z tego poziomu jest dostęp do informacji na temat danego wywołania strony. Poniżej znajduje się przykład obrazujący powyższy opis

Bieżący czas: <%= new java.util.Date() %>

czyli w momencie wywołania strony wyświetlana jest aktualna data/czas.

Dla uproszczenia wyrażeń zostało utworzone kilka zmiennych predefiniowanych, które mogą zostać użyte. Te obiekty zostaną omówione w innej części poświęconej zmiennym predefiniowanym, jednak kilka dość znaczączych z nich to:

  • request, czyli HttpServletRequest;
  • response, czyli HttpServletResponse;
  • session, czyli HttpSession związany z wywołaniem (jeśli jest)
  • out, czyli PrintWriter (buforowana wersja JspWriter) używane w celu wysłania informacji na wyjście (okno przeglądarki).

Oto przykład:

Twój komputer: <%= request.getRemoteHost() %>

Programiści XML mogą użyć alternatywnego rozwiązania dla wyrażeń JSP:

<jsp:expression>
Wyrażenie Javy
</jsp:expression>

Należy pamiętać, że elementy XML, inaczej niż HTML, rozróżniają wielkość liter. W związku z tym należy uważać by używać małych liter, tak jak ma to miejsce w powyższym przykładzie.

2. Skryplety JSP

Jeśli istnieje potrzeba wykonania czegoś bardziej złożonego niż przekazanie pojedynczej wartości (jak to miało miejsce w przypadku wyrażeń), można wykorzystać skryplety JSP. Skryplety JSP pozwalają umieścić dowolny kod wewnątrz metody servletu, który zostanie zbudowany w celu wygenerowania strony. Skryplety przyjmują następującą formę:

<% Kod Javy %>

Skryplety mają dostęp do tych samych zmiennych co wyrażenia. Na przykład, jeśli jest potrzeba przekazania na wyjście jakiejś wartości na wynikowej stronie można użyc w tym celu zmiennej out.

<%
String queryData = request.getQueryString();
out.println("Dołączone dane typu GET: " + queryData);
%>

Kod wewnątrz skrypletu, np. taki jak powyższy może sąsiadować z dowolnym statycznym kodem HTML (szablon tekstowy), który znajdując się czy to przed czy za danym skrypletem, zostanie przekonwertowany na składnię Javy print. To oznacza, że skryplety nie muszą zawierać w samej składni Javy, lecz także bloki statycznego HTMLa. Przykładem może być poniższy fragment JSP zawierający szablony tekstowe jak i skryplety

<% if (Math.random() < 0.5) { %>
<B>Miłego</B> dnia!
<% } else { %>
<B>Pechowego</B> dnia!
<% } %>

zostanie przekonwerowane do:

if (Math.random() < 0.5) {
out.println("<B>Miłego</B> dnia!");
} else {
out.println("<B>Pechowego</B> dnia!");
}

Jeśli istnieje potrzeba użycia ciągu znaków "%>" wewnątrz skrypletu należy wpisać "%\>". Ekwiwalentem XML dla zapisu

<% kod %>

jest

<jsp:scriptlet>
kod
</jsp:scriptlet>

3. Deklaracje JSP

Deklaracja JSP pozwala definiować metody lub pola, które są umieszczane wewnątrz klasy servletu (poza metodą service). Oto przykład:

<%! Kod Javy %>

Deklaracje nie generują żadnych danych wyjściowych, one są używane łącznie z wyrażeniami JSP lub skrypletami. Dla przykładu poniżej znajduje się fragment, który wypisuje wartość liczbową odpowiadającą ilości wywołania bieżącej strony od momentu uruchomienia serwera (lub zmiany i przeładowania klasy servletu):

<%! private int Licznik = 0; %>
Stronę wywołano od czasu uruchomienia serwera:
<%= ++Licznik %>

Podobnie jak w przypadku skrypletów, jeśli istnieje potrzeba użycia ciągu znaków "%>", należy wpisać "%\>". Ekwiwalentem XML dla:

<%! Kod %>

jest

<jsp:declaration>
Kod
</jsp:declaration>

 
do góry ^ 
Jesteś 2623765 odwiedzającym
 
 
Copyright © 2003-2020 Krzysztof Stelmach, Wszelkie prawa zastrzeżone.
 
System reklamy Test