JavaServer Pages
JavaServer Pages – technologija, leidžianti dinamiškai generuoti HTML, XML, ar kito tipo puslapius. Ši technologija suteikia galimybę į statinį puslapį įterpti Java kodą ir kitą dinaminį turinį. JSP puslapyje kaitaliojasi įprastine HTML kalba parašyti fragmentai bei java kalba parašytos sekcijos. J2EE serveris vykdo puslapyje esantį java kodą kuris iš anksto specialia JSP direktyva deklaruotiems kintamiesiems priskiria reikiamas reikšmes. Kita JSP direktyva šias reikšmes galima reikiamoje vietoje įterpti į dokumentą. Gerai parašytoje sistemoje JSP puslapio kodas atsakingas tik už paties dokumento generavimą. Sąveika su duomenų bazėmis, sudėtingesni skaičiavimo algoritmai, sprendimų priėmimas bei kiti panašūs algoritmai turi būti koduojami aukštesniame, EJB lygyje (JSP puslapis turi kviesti EJB modulius). Paprastas[reikalingas šaltinis] pavyzdys<html> <body> <%!String intarpas; %> <p>Cia paprastas HTML tekstas</p> <% // O čia java kodas: int s = 0; for (int i = 1; i < 10; i++) s += i; intarpas = "Skaiciu nuo vieno iki devyniu suma: "+s; %> </pre> <p>Java kodo rezultatas:</p> <b><i><u> <%= intarpas %></b></i></u> </body> </html> Puslapis naršykėje atrodys taip (tikrinta su JOnAS[reikalingas šaltinis]): Čia paprastas HTML tekstas Java kodo rezultatas: Pavyzdys su cikluJSP nesunku generuoti ir iš anksto nežinomo ilgio sąrašą, lentelę ar kitą panašų dokumento elementą. Šiuo atveju programuojamas java ciklas su jame esančia HTML sekcija, kuri į generuojamą dokumentą keliskart įterpiama pakartotinai: <ul> <% for (int i = 0; i <3; i++) { %> <li> <%=i %> </li> <% } %> </ul%> Ši seka generuos trijų eilučių sąrašą:
ParametraiJSP java kodas gali pasiekti keletą iš anksto apibrėžtų kintamųjų, iš kurių svarbiausias yra request (angl užklausa). Iš request objekto galima sužinoti, kokie buvo puslapio kvietimo parametrai (jei puslapis generuojamas kaip vartotojo atsakas į užpildyta HTML formą) bei kokie yra anksčiau toje naršyklėje pasidėti slapukai. Slapukams padėti naudojamas kitas iš anksto apibrėžtas kintamasis, response. Slapukai dažniausiai reikalingi įsiregistravimui į slaptažodžiu apsaugotą sistemą. JSP puslapio dalysJSP puslapis paprastai turi tokias dalis:
Statiniai duomenysStatiniai duomenys yra tiesiogiai perrašomi į HTTP atsakymą. Taigi paprastas HTML failas yra suprantamas kaip korektiškas JavaServer puslapis be jokių specifinių JSP elementų. Tokiu atveju į HTTP atsakymą visą laiką būtų siučiama ta pati informacija. Bet JSP tikslas yra papildyti puslapį dinaminiu turiniu, todėl vien tik paprasto HTML pateikimas JSP kompiliatoriui retai kada yra prasmingas. JSP direktyvosJSP direktyvos kontroliuoja kaip JSP kompiliatorius generuoja servletą. Žemiau pateiktas galimų direktyvų sąrašas:
<%@ include file="betkoksfailas.jspf" %>
Pavyzdžiai: <%@ page import="java.util.*" %> <%@ page contentType="text/html" %> <%@ page isErrorPage=false %> <%@ page isThreadSafe=true %> Tik import direktyva gali būti naudojama daugiau nei vieną kartą tame pačiame JSP puslapyje.
<%@ taglib prefix="myprefix" uri="taglib/mytag.tld" %> JSP skripto elementai ir kintamiejiStandartiniai skripto kintamiejiVisąlaik prieinami skripte yra šie kintamieji:
|