Mis on JSP-direktiivid?
- JSP-direktiivid on sõnumid JSP-konteinerisse. Need pakuvad kogu JSP-lehe kohta ülemaailmset teavet.
- JSP-direktiive kasutatakse spetsiaalsete juhiste andmiseks konteinerile JSP-i servlet-koodi tõlkimiseks.
- JSP elutsükli faasis tuleb JSP teisendada servletiks, mis on tõlkefaas.
- Nad annavad konteinerile juhiseid, kuidas JSP töötlemise teatud aspekte käsitleda
- Direktiividel võib olla palju komadega eraldatavaid võtme-väärtuse paaridena atribuute.
- JSP-s on direktiivi kirjeldatud siltides <% @%>.
Direktiivi süntaks:
<%@ directive attribute %>
Direktiive on kolme tüüpi:
- Lehekülje direktiiv
- Kaasa direktiiv
- Taglibi direktiiv
Kõiki neist kirjeldatakse üksikasjalikult allpool koos näidetega:
Selles õpetuses saate teada -
- JSP lehedirektiiv
- JSP Lisa direktiiv
- JSP Taglibi direktiiv
JSP lehedirektiiv
Lehe direktiivi süntaks:
<%@ page… %>
- See pakub atribuute, mida rakendatakse kogu JSP-lehele.
- See määratleb lehest sõltuvad atribuudid, nagu skriptikeel, vealeht ja puhverdamise nõuded.
- Seda kasutatakse juhiste andmiseks konteinerile, mis on seotud praeguse JSP-lehega.
Järgnevas loendis on atribuudid, mis on seotud lehe direktiiviga:
- Keel
- Pikendab
- Impordi
- sisu tüüp
- info
- seanss
- isThreadSafe
- automaatne loputamine
- puhver
- IsErrorPage
- lehtKodeerimine
- errorPage
- isELIgonored
Lisateave iga atribuudi kohta
- keel : See määratleb lehel kasutatava programmeerimiskeele (aluseks oleva keele).
Keele süntaks:
<%@ page language="value" %>
Siin on väärtus programmeerimiskeel (aluseks olev keel)
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>
Koodi selgitus: ülaltoodud näites on atribuudikeele väärtuseks Java, mis on antud juhul aluseks olev keel. Seega kompenseeritakse avaldise siltides olev kood Java-kompilaatori abil.
- Laiendab : seda atribuuti kasutatakse klassi laiendamiseks (pärimiseks), nagu seda teeb JAVA
Laienduste süntaks:
<%@ page extends="value" %>
Siin tähistab väärtus klassi, kust see tuleb pärida.
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%><%@ page extends="demotest.DemoClass" %>
Koodi selgitus: ülaltoodud koodis laiendab JSP demotesti paketti kuuluvat DemoClassi ja laiendab kõiki klassi funktsioone.
- Import : See atribuut on lehedirektiivi atribuutides enimkasutatav atribuut. Seda kasutatakse konteineri käskimiseks importida muid Java-klasse, liideseid, loendeid jms, luues samal ajal servletikoodi. See on sarnane Java-klasside, liideste impordilausetega.
Impordi süntaks :
<%@ page import="value" %>
Siin väärtus näitab klasse, mis tuleb importida.
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"import="java.util.Date" pageEncoding="ISO-8859-1"%>
Koodi selgitus:
Ülaltoodud koodis impordime kuupäeva klassi paketist java.util (kõik utiliidiklassid) ja see võib kasutada kõiki järgmise klassi meetodeid.
- contentType :
- See määratleb märkide kodeerimisskeemi, st seda kasutatakse vastuse sisutüübi ja märgistiku määramiseks
- ContentType vaiketüüp on "text / html; charset = ISO-8859-1".
Sisu süntaksTüüp:
<%@ page contentType="value" %>
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>
Koodi selgitus:
Ülaltoodud koodis on sisutüübiks tekst / html, see määrab JSP-le ja loodud vastuslehele märgikodeeringu.
- info
- See määratleb stringi, millele pääseb juurde meetodiga getServletInfo ().
- Seda atribuuti kasutatakse servleti kirjelduse määramiseks.
Teabe süntaks:
<%@ page info="value" %>
Siin tähistab väärtus servleti teavet.
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"info="Guru Directive JSP" pageEncoding="ISO-8859-1"%>
Koodi selgitus:
Ülaltoodud koodis saab servleti liidese abil tõmmata stringi "Guru direktiiv JSP" saidi getServletInfo () abil
- Seanss
- JSP leht loob vaikimisi seansi.
- Mõnikord ei pea me seanssi JSP-s looma ja seetõttu võime sel juhul selle atribuudi valeks määrata. Seansi atribuudi vaikeväärtus on tõene ja seanss on loodud.
Kui see on seatud väärtusele Väär, siis võime kompilaatorile osutada, et see seanssi vaikimisi ei loo.
Seansi süntaks:
<%@ page session="true/false"%>
Siin saab sel juhul seansi atribuudiks määrata tõese või vale
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"session="false"%>
Koodi selgitus:
Ülalolevas näites on seansi atribuudiks seatud "false", seega näitame, et me ei soovi selles JSP-s ühtegi seanssi luua
- isThreadSafe:
- See määratleb loodud servleti keermestamise mudeli.
- See näitab lehel rakendatud niidiohutuse taset.
- Selle vaikeväärtus on nii üheaegne
- Saame seda atribuuti kasutada SingleThreadModeli liidese loomiseks loodud servletis.
- Kui määrame selle väärtuseks Väär, siis rakendab see rakenduse SingleThreadModel ja pääseb juurde kõigile jagatud objektidele ning võib põhjustada vasturääkivusi.
IsThreadSafe süntaks:
<% @ page isThreadSafe="true/false" %>
Siin vastab tõene või vale, kui sünkroonimine on olemas, siis määrake see tõeseks ja valeks.
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"isThreadSafe="true"%>
Koodi selgitus:
Ülaltoodud koodis on isThreadSafe seatud väärtusele "true", seega tehakse sünkroonimine ja saab kasutada mitut lõime.
- Automaatne loputamine:
See atribuut täpsustab, et puhverdatud väljundit tuleks loputada automaatselt või mitte ja selle atribuudi vaikeväärtus on tõene.
Kui väärtuseks on seatud väär, siis puhvrit ei loputata automaatselt ja kui see on täis, saame erandi.
Kui puhvrit pole, siis on vale ebaseaduslik ja puhverdamist pole, seega loputatakse see automaatselt.
AutoFlushi süntaks:
<% @ page autoFlush="true/false" %>
Siin tõene / väär näitab, kas puhverdamine tuleb teha või mitte
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"autoFlush="false"%>
Koodi selgitus:
Ülaltoodud koodis on automaatne loputamine seatud valeks ja seega puhverdamist ei tehta ning see on väljundi käsitsi loputanud.
- Puhver:
- Selle atribuudi kasutamine võib väljundvastuse objekti puhverdada.
- Selle atribuudi abil saame määrata puhverdamise suuruse ja vaikimisi suurus on 8KB.
- See suunab servleti kirjutama puhver enne vastuse objektile kirjutamist.
Puhvri süntaks:
<%@ page buffer="value" %>
Siin tähistab väärtus määratletava puhvri suurust. Kui puhvrit pole, siis võime kirjutada kui ühtegi ja kui me ühtegi väärtust ei maini, on vaikimisi 8KB
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"buffer="16KB"%>
Koodi selgitus:
Ülaltoodud koodis on puhvri suuruseks nimetatud 16 KB, kus puhver oleks selle suurusega
- isErrorPage:
- See näitab, et JSP-lehte, millel on errorPage, kontrollitakse teisel JSP-lehel
- Kõik atribuudiga "isErrorPage" deklareeritud JSP-failid saavad seejärel vastu võtta erandeid teistelt JSP-lehtedelt, millel on vealehed.
- Erandid on saadaval ainult nendel lehtedel.
- Vaikeväärtus on vale.
IsErrorPage'i süntaks:
<%@ page isErrorPage="true/false"%>
Näide:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"isErrorPage="true"%>
Koodi selgitus:
Ülalolevas koodis on isErrorPage tõene. Seega kontrollib see, kas kõigil teistel JSP-del on atribuudikomplekt errorPage (kirjeldatud järgmises atribuudis) ja nad saavad hakkama eranditega.
- Lehekülje kodeerimine:
Vaikimisi on määratud "ISO-8859-1", kui muud pole täpsustatud.
Lehe süntaks: kodeerimine:
<%@ page pageEncoding="vaue" %>
Siin väärtus määrab JSP tähemärgi väärtuse
Näide:
<%@ page language="java" contentType="text/html;" pageEncoding="ISO-8859-1"isErrorPage="true"%>
Koodi selgitus:
Ülalolevas koodis on "pageEncoding" seatud vaikimisi tähemärkide komplekti ISO-8859-1
- errorPage:
ErrorPage'i süntaks:
<%@ page errorPage="value" %>
Siin väärtus tähistab viga JSP lehe väärtust
Näide:
<%@ page language="java" contentType="text/html;" pageEncoding="ISO-8859-1"errorPage="errorHandler.jsp"%>
Koodi selgitus:
Ülaltoodud koodis on erandite käsitlemiseks errroHandler.jsp
- isELI ignoreeritud:
- IsELIgnored on lipu atribuut, kus peame otsustama, kas eirata EL-silte või mitte.
- Selle andmetüüp on java enum ja vaikeväärtus on vale, seega on EL vaikimisi lubatud.
IsELI ignoreeritud süntaks:
<%@ page isELIgnored="true/false" %>
Siin vastab tõene / väär väärtus EL väärtusele, kas seda tuleks ignoreerida või mitte.
Näide:
<%@ page language="java" contentType="text/html;" pageEncoding="ISO-8859-1"isELIgnored="true"%>
Koodi selgitus:
Ülaltoodud koodis on isELIgnored tõene ja seetõttu eiratakse väljendiekeelt (EL).
Allpool toodud näites kasutame nelja atribuuti (koodirida 1-2)
Nelja atribuudiga näide
<% @ page language = "java" contentType = "text / html;" pageEncoding = "ISO-8859-1"isELIgnored = "false"%><% @ page import = "java.util.Date"%>Direktiivi Guru JSP1 Kuupäev on: <% = uus java.util.Date ()%>