JavaServer Pages – akčné značky 3.
Ak chcete do stránky začleniť externý súbor, máte tri možnosti, ktoré si ukážeme. Direktíva alebo akcia vám umožnia začleniť statický súbor, prípadne výsledok inej JSP stránky. No a nakoniec môžete do stránky vložiť aj applety.
Vkladanie súborov počas prekladu stránky (statické vkladanie)
Na vkladanie súborov počas prekladu stránky (typicky pri prvom prístupe) sa používa direktíva include
. Jej syntax je nasledovná:
<%@ include file = ‚relativeURL‘ %>
Vložený súbor môže obsahovať kód JSP aj statické HTML. Môžete tak vytvárať znovu použiteľné navigačné lišty a podobne, teda veci, ktoré by sa museli objavovať na viacerých stránkach znovu. Menším problémom je, že ak sa zmení obsah vkladaného súboru, je treba zaktualizovať všetky stránky, ktoré ho používajú. Zaktualizovať znamená znova preložiť stránku a skompilovať ju. Lenže ako presvedčiť server, aby to urobil? Je nutné zmeniť dátum alebo čas poslednej modifikácie stránky. Najjednoduchšie je vložiť do stránky komentár s dátumom poslednej aktualizácie:
<%@ include file = ‚File.jsp‘ %>
<%– File.jsp zmenené 15.5.2002/12:35 –%>
V nasledujúcom príklade som vytvoril dva jednoduché súbory JspTest2.jsp a JspTest3.html, ktoré vložím do hlavného súboru JspTest1.jsp pomocou tagu include
. Zdrojové kódy ukážok sú vám k dispozícii.
Súbor JspTest2.jsp:
<!DOCTYPE HTML PUBLIC ‚-//W3C//DTD HTML 4.01 Transitional//EN‘>
<html>
<head>
<%@ page import=’java.util.Date‘ %>
<%@ page import=’java.text.DateFormat‘ %>
</head>
<body>
<%= DateFormat.getDateInstance().format(new Date())%>
// vloží aktuálny dátum
</body>
</html>
Súbor JspTest3.html:
<!DOCTYPE HTML PUBLIC ‚-//W3C//DTD HTML 4.01 Transitional//EN‘>
<html><head></head>
<body>
je správny deň na pohár whiskey.
<!– toto je klasický html súbor –>
</body>
</html>
No a nakoniec hlavný súbor JspTest1.jsp, ktorý tie dva spojí:
<!DOCTYPE HTML PUBLIC ‚-//W3C//DTD HTML 4.01 Transitional//EN‘>
<html><head></head>
<body>
<%@ include file=’JspTest2.jsp’%> <%@ include file=’JspTest3.html’%>
</body>
</html>
Na tomto príklade vidíte, že pomocou direktívy include
je možné vkladať aj *.jsp aj *.html súbory. Výsledkom volania stránky JspTest1.jsp by mohlo byť napríklad '9.8.2002 je správny deň na pohár whiskey.'
Vkladanie súborov v dobe požiadavky (dynamické vkladanie)
Direktíva include
umožňuje vkladať súbory *.jsp aj *.html. Na druhej strane, ak sa zmení obsah vkladaného súboru, je nutné upraviť aj všetky ostatné, ktoré vkladajú daný súbor. Túto nevýhodu kompenzuje akcia jsp:include
, ktorá vkladá súbor do stránky JSP až v dobe požiadavky na stránku.
Element jsp:include
má povinné atribúty page
(odkazuje na súbor) a flush
.
<jsp:include page = ‚relativeURL‘ flush = ‚true‘ />
Parameter flush
prikazuje stránke vyprázdniť výstupný buffer ešte pred vložením samotného súboru, pričom hodnota true je jediná možná. Do stránky môžete vložiť html, cgi skript, servlet alebo jsp stránku. Vkladané stránky zdieľajú request
a session
objekty spolu s hlavnou stránkou. Obmedzením tohto spôsobu vkladania súborov je, že nemôžete nastavovať pomocou implicitného objektu response
hlavičku hlavného súboru.
Ak potrebujete vkladanej stránke predať nejaké parametre ešte pred samotným vložením, môžete to urobiť nasledovným spôsobom:
<jsp:include page=’somePage.jsp‘ flush=’true‘>
<jsp:param name = ‚Name1′ value =’Data‘ />
<jsp:param name = ‚Name2′ value ='<%= value %>‘ />
</jsp:include>
Vkladanie appletov do stránky
Na vloženie appletu do stránky je možné použiť element jsp:plugin
. Má pomerne veľa parametrov, ale je nutné použiť aspoň tieto štyri:
<jsp:plugin type = ‚applet‘ code = ‚Applet.class‘
width = ‚šírka‘ height = ‚výška’/>
Problematika appletov je podrobnejšie rozobraná napríklad v článkoch Java aplety na stránke a Komunikace JAVA appletu s HTML stránkou na Interval.cz.
Mohlo by vás také zajímat
-
Vstupte do éry umělé inteligence: ASOME Max Studio s AMD Ryzen™ 9 7940HS
14. listopadu 2023 -
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
AI na dosah ruky: Jak je to s AI v osobních zařízeních?
22. ledna 2024 -
Windows App: Pracujte odkudkoliv, kdykoliv
3. listopadu 2024
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024