JSP | |
---|---|
Extensie | .jsp |
tip MIME | aplicație/jsp |
Dezvoltator | Fundația Eclipse |
Ultima lansare | 3.1.0 (15 mai 2022 ) |
Tip de format | format de fișier , motor de șablon și specificație tehnică |
Standard(e) | JSR 245 |
Site-ul web | projects.eclipse.org/… ( engleză) |
Fișiere media la Wikimedia Commons |
JSP ( JavaServer Pages ) este o tehnologie care permite dezvoltatorilor web să creeze conținut care are atât componente statice, cât și dinamice. O pagină JSP conține două tipuri de text: date sursă statice, care pot fi într-unul dintre formatele de text HTML , SVG , WML sau XML , și elemente JSP care construiesc conținut dinamic. În plus, bibliotecile de etichete JSP, precum și Expression Language (EL), pot fi folosite pentru a încorpora codul Java în conținutul static al paginilor JSP.
Codul paginii JSP este tradus în cod servlet Java utilizând compilatorul de pagină Jasper JSP și apoi compilat în bytecode Java Virtual Machine ( JVM ) . Containerele servlet capabile să execute pagini JSP sunt scrise în limbajul Java independent de platformă. JSP-urile sunt încărcate pe server și gestionate dintr-o structură specială de pachete de server Java numită Jakarta EE Web Application. De obicei, paginile sunt ambalate în arhive de fișiere .war și .ear .
Tehnologia JSP este o tehnologie independentă de platformă, portabilă și ușor extensibilă pentru dezvoltarea aplicațiilor web .
Începând cu versiunea 1.2, dezvoltarea JavaServer Pages a avut loc în cadrul Java Community Process . JSR 53 definește standardele JSP 1.2 și Servlet 2.3, în timp ce JSR 152 definește specificația JSP 2.0. În mai 2006, specificația JSP 2.1 a fost lansată sub JSR 245 ca parte a Java EE 5 . La 10 decembrie 2009, specificația JSP 2.2 a fost lansată ca conținut al versiunii JSR 245 .
Aceste versiuni sunt fundamental diferite de versiunile anterioare, care au fost percepute ca răspunsul Java la ASP . Unele dintre caracteristicile de bază ale versiunilor anterioare (cum ar fi capacitatea de a dezvolta biblioteci de etichete) au fost eliminate sau înlocuite în conformitate cu principiul separării codului și conținutului. Deoarece este dificil să navigați și să separați conținutul de codul în sine în volume mari de cod sursă , a venit ideea de a le separa (transfera) folosind etichete JSP, cum ar fi <jsp:useBean/>. Pentru a implementa această idee, etichetele JSP au fost împărțite în trei grupuri logice: directive, elemente de script și acțiuni.
JSP 1.2 extinde specificația JavaServer Pages 1.1 (JSP 1.1) după cum urmează:
Noua versiune a specificației JSP adaugă următoarele funcționalități:
Platforma Java EE 5 se concentrează pe dezvoltarea ușoară folosind adnotările în limbajul Java care au fost introduse de J2SE 5.0 . JSP 2.1 sprijină acest obiectiv prin definirea adnotărilor de injectare a dependenței pe instrucțiunile JSP și ascultătorii de context.
Paginile JavaServer (JSP) vă permit să separați partea dinamică a paginilor de HTML static . Partea dinamică este închisă în etichete speciale "<% %>":
Numele dvs. de gazdă : <% = cerere . getRemoteHost () %>Paginile JSP au o extensie .jspși sunt plasate în același loc cu paginile Web obișnuite. Structura unor astfel de pagini poate consta din cinci constructe: HTML , comentarii, elemente de script, directive și acțiuni. Pagina JSP este compilată într-un servlet cu conținut static care este trimis către fluxul de ieșire asociat cu metoda de serviciu . Prin urmare, la prima solicitare, acest proces poate provoca o ușoară întârziere. Comentariile dintr-un document sau program nu determină încetinirea programului, deoarece sunt ignorate de compilator și executant. Elementele de script vă permit să specificați codul Java care va deveni mai târziu parte a servlet-ului final, directivele vă permit să controlați întreaga structură a servlet-ului, iar acțiunile servesc la specificarea componentelor existente utilizate, precum și la controlul comportamentului motorului JSP. . Pentru a face scriptarea mai ușoară, există variabile predefinite, cum ar fi request, response, pageContext, session, out, application, config, page, exception. Un exemplu de pagină JSP care utilizează toate componentele JSP:
Comentariile sunt folosite pentru a explica codul sursă al unui program. În paginile JSP, comentariile pot fi împărțite în două grupuri:
Comentariile codului sursă JSP sunt marcate cu o secvență specială de caractere: <%--la începutul și --%>la sfârșitul comentariului. Acest tip de comentariu este eliminat atunci când pagina JSP este compilată. Exemplu de comentariu JSP:
<%-- Afișează catalogul de produse și coșul de cumpărături curent . --%>Comentariile de markup HTML sunt formatate conform regulilor limbajului HTML. Acest tip de comentariu este tratat ca text static de către compilatorul JSP și plasat în documentul HTML de ieșire. Expresiile JSP din comentariile HTML sunt executate. Exemplu de comentariu HTML:
<!-- Data creării paginii : <%= java nou . util . Data () %> -->Specificația JSP distinge trei tipuri de elemente de script:
Declarațiile sunt utilizate în mod obișnuit pentru a defini variabile, metode, clase interne și alte constructe Java valide la nivel de clasă. Expresiile devin argumente pentru metoda out.print(). Cu ajutorul scriptlet -urilor , părțile de lucru ale codului Java sunt încorporate în paginile JSP.
Declarații JSPDeclarațiile JSP vă vor permite să definiți variabile, metode, clase interne și așa mai departe. Declarațiile sunt folosite pentru a defini constructele Java utilizate în program. Deoarece declarațiile nu sunt randate, ele sunt de obicei folosite împreună cu expresii JSP sau scriptlet-uri. Exemplul de fragment JSP arată numărul de solicitări către această pagină de când serverul a fost pornit (sau de la ultima modificare și reîncărcare a servlet-ului). Rețineți că în exemplu folosim atât o declarație, cât și o expresie și că în interiorul constructului, există un punct și virgulă ( ; ) după declarație:
<%! private int accessCount = 0 ; %> Numărul de accesări de pagină de la încărcarea serverului : < %= ++ accessCount % > Expresii JSPExpresiile JSP sunt folosite pentru a insera valori Java direct în ieșire. Expresiile Java sunt evaluate, convertite într-un șir și inserate în pagină. Aceste calcule au loc în timpul execuției (adică atunci când pagina este solicitată) și, prin urmare, există acces deplin la informații despre cererea în sine. În expresii, puteți folosi constante, variabile, apeluri la diferite metode. Toate expresiile, indiferent de complexitatea conținutului lor, se evaluează la un singur rezultat sau număr. Paginile JSP se bazează pe JSP Writer , care preia orice rezultat al unei expresii, îl convertește într-un tip (text) și îl plasează înString buffer . De exemplu, următorul cod afișează data și ora unei anumite solicitări de pagină:
Ora curentă : <%= java nou . util . Data () %> Numele dvs. de gazdă : <% = cerere . getRemoteHost () %>Trebuie să fiți atenți la trei reguli:
Scriptleturile JSP vă permit să inserați orice cod într-o metodă servlet care va fi generată atunci când pagina este randată, permițându-vă să utilizați majoritatea constructelor Java. Scriptleturile au, de asemenea, acces la aceleași variabile predefinite ca și expresiile. Prin urmare, de exemplu, pentru a afișa o valoare pe o pagină, trebuie să utilizați o variabilă predefinită out.
<% String queryData = cerere . getQueryString (); afară . println ( "Date de interogare suplimentare: " + queryData ); %>Codul din interiorul scriptlet-ului este inserat așa cum a fost scris. Tot HTML static (text șablon) înainte sau după scriptlet este convertit folosind print. De exemplu, următorul fragment JSP conține un text mixt de șablon și scriptlet:
<% if ( Math . random () < 0,5 ) { %> < B > O zi bună </ B > ! <% } else { %> < B > Să ai o zi proastă </ B > pentru tine ! <% } %>După convertirea scriptlet-ului, codul va arăta astfel:
if ( Math . aleatoriu () < 0,5 ) { out . println ( "<B>O zi buna</B>!" ); } else { afară . println ( „<B>O zi proastă</B> să ai!” ); }Aceasta înseamnă că scriptlet-urile nu trebuie să conțină fragmente Java complete și că blocurile lăsate deschise pot afecta HTML static în afara scriptlet-ului.
Pagina JSP poate trimite un mesaj către containerul corespunzător cu instrucțiuni despre ce trebuie făcut. Aceste mesaje se numesc directive. Toate directivele încep cu <%@, urmate de numele directivei și unul sau mai multe atribute cu valori și se termină cu %>. Directivele din pagina JSP determină containerul să trimită o solicitare pentru a executa un anumit serviciu care nu este declarat în documentul generat. Forma directivelor poate fi reprezentată după cum urmează:
<% @ atribut directive = „valoare” %>De asemenea, puteți combina setarea mai multor atribute pe o singură directivă:
<% @ directivă atribut1 = "valoare1" atribut2 = "valoare2" ... atributN = " valoareN " %>Există trei tipuri principale de directive: page , care vă permite să faceți lucruri precum importarea claselor, modificarea superclasei unui servlet și așa mai departe; include , care vă permite să inserați un fișier într-o clasă de servlet atunci când traduceți un fișier JSP într-un servlet; și taglib , care vă permite să extindeți multe etichete cu propriile dvs., pe care containerul JSP este capabil să le interpreteze.
Directiva de pagină JSPDupă cum sugerează și numele, această directivă oferă atribute pentru pagina JSP. Atributele definite în această directivă sunt încorporate în pagina JSP dată și toate elementele sale statice imbricate, indiferent dacă au fost inserate cu directiva includesau cu acțiunea jsp:include. Forma directivei este pageurmătoarea:
<% @ atribut pagină = " valoare " %>Să luăm următoarea intrare ca exemplu:
<% @ import page = ” java . util . * , com . clasele mele . * ” buffer = ” 15 kb ” %>Această directivă afirmă că pagina JSP va importa clase din două pachete Java java.utilși com.myclassesapoi specifică dimensiunea memoriei tampon care ar trebui utilizată pentru a procesa pagina JSP dată.
În continuare, luați în considerare atributele directivei page:
Puteți obține același rezultat folosind un scriptlet:
<% răspuns . setContentType ( "text/plain" ); %> JSP include directivaAceastă directivă vă permite să includeți fișiere într-un servlet atunci când traduceți o pagină JSP. Utilizarea directivei arată astfel:
<% @ include file = „url relativ” %>URL -ul dat este de obicei interpretat în raport cu JSP-ul paginii pe care se află linkul, dar, ca și în cazul oricăror alte adrese URL relative, puteți spune sistemului locația resursei de care sunteți interesat în raport cu serverul web . directorul principal prin prefixarea URL - ului cu simbolul „ / ” . Conținutul unui fișier include este tratat ca text JSP simplu și, prin urmare, poate include elemente precum HTML static , elemente de script, directive și acțiuni. De exemplu, multe site-uri folosesc o mică bară de navigare pe fiecare pagină. Din cauza problemelor de utilizare a cadrelor HTML , această sarcină este adesea rezolvată prin plasarea unui tabel mic în partea de sus sau în jumătatea stângă a paginii, al cărui cod HTML este repetat de mai multe ori pentru fiecare pagină a site-ului. Directiva includeeste cea mai naturală modalitate de a îndeplini această sarcină, salvând dezvoltatorul de coșmarul copierii HTML în fiecare fișier. Se intampla asa:
<! DOCTYPE HTML PUBLIC „-//W3C//DTD HTML 4.0 Transitional//EN” > < html > < head > < title > Pagina de testare </ title > </ head > < body > <% @ include file = "/navbar .html" %> <!-- Un fragment specific din această pagină ... --> </ body > </ html >Rețineți că, deoarece directiva includeinclude fișiere în timpul traducerii paginii, după ce faceți modificări în bara de navigare, va trebui să retraduceți toate paginile JSP folosind-o. Ceea ce în acest caz este un compromis bun, deoarece, de regulă, bara de navigare se schimbă destul de rar și procesul de conectare nu își pierde eficacitatea. Dacă fișierele incluse se modifică destul de des, puteți utiliza acțiunea jsp:include. Această acțiune include fișierul în timp ce accesați JSP.
Directiva JSP taglibDupă cum știți deja, în paginile JSP, elementele sunt scrise folosind etichete (semne convenționale, etichete, mărci). Setul de etichete pe care un container JSP le poate interpreta poate fi extins cu așa-numitele biblioteci de etichete. De asemenea, puteți atașa acțiuni la un set extins de etichete, ceea ce duce la o extensie a limbajului JSP în sine. Etichetele pot fi împărțite în etichete standard și personalizate. Un mod generalizat de a scrie ar putea arăta astfel:
<% @ taglib uri = ” URI la biblioteca de etichete ” prefix = “ prefix de caractere ” %>Biblioteca de etichete trebuie să fie identificată printr-o adresă URI (un identificator unic de resursă). URI poate fi absolut sau relativ. Identificatorul unic al resursei identifică locația unei biblioteci de etichete ( TLD ) care definește propriile etichete ale bibliotecii respective. Un exemplu de intrare de directivă:
<% @ taglib uri = " http://www.moywebserver.ru/naydiznaki.tld " prefix = "iskat" %>O pagină JSP poate conține un număr infinit de directive taglib, dar fiecărei directive trebuie să i se atribuie un prefix diferit care definește conținutul bibliotecii de pe pagină. Ca prefix, puteți folosi orice text, cuvânt. În timp ce o directivă taglibpoate fi folosită oriunde într-o pagină JSP, orice etichete native pe care le folosesc aceste directive trebuie să fie folosite în spatele lor.
Acțiunile JSP folosesc constructe de sintaxă XML pentru a controla funcționarea motorului servlet. Puteți să includeți dinamic un fișier, să reutilizați JavaBeans , să direcționați utilizatorul către o altă pagină sau să generați HTML pentru un plugin Java . Toate aceste acțiuni sunt discutate în detaliu mai jos. Amintiți-vă că, la fel ca în cazul tuturor XML , numele elementelor și atributelor sunt sensibile la majuscule și minuscule. Acțiunile pot fi împărțite în două grupe: standard și create (proprii, pe care le creează programatorul). Sunt permise următoarele acțiuni standard:
Această acțiune vă permite să încărcați un JavaBean pentru utilizare ulterioară într-o pagină JSP. Această caracteristică vă permite să reutilizați clasele Java fără a sacrifica beneficiile oferite de servleturile JSP. În plus, aceasta este o modalitate de a elimina o mare parte a procesării Java din pagina JSP. Dacă transferați procesarea Java de la o pagină JSP la un JavaBean, atunci aceste funcții pot fi utilizate în alte pagini JSP. Cea mai simplă sintaxă pentru specificarea bean-ului de utilizat este:
< jsp : useBean id = "nume" class = "pachet.clasa" />De obicei, aceasta înseamnă „crearea unei noi instanțe a unui obiect din clasa specificată de clasă și asocierea acesteia cu o variabilă numită de id ”. Cu toate acestea, puteți seta atributul scope (preia valorile page|request|session|application, pagepentru pagină, requestpentru solicitări, sessionpentru sesiuni sau dialoguri, applicationpentru aplicație), care este asociat beannu numai cu pagina curentă. În acest caz, este util să obțineți referințe la existente beans, iar acțiunea jsp:useBeaninstanțiază un obiect nou doar dacă nu există niciun obiect cu aceleași valori de id și domeniu . Acum că aveți un bean, puteți modifica proprietățile acestuia cu o acțiune jsp:setPropertysau folosind un scriptlet pentru a face acest lucru și apelând explicit metoda obiectului cu numele variabilei specificat mai devreme prin atributul id . Amintiți-vă că în cazul beans , când spuneți „acest bean are o proprietate de tip X numită foo„, vă referiți cu adevărat la „această clasă are o metodă getFoocare returnează date de tip X și o altă metodă care ia X setFooca parametru”. Acțiunea jsp:setPropertyeste tratată mai detaliat în secțiunea următoare, dar deocamdată ar trebui să vă amintiți că puteți fie setați în mod explicit valoarea setând atributul param pentru a obține valoarea din parametrul de interogare corespunzător, fie pur și simplu enumerați proprietățile pentru a obține valori de la parametrii de interogare cu aceleași nume ca și proprietăți. Puteți obține valorile proprietăților existente folosind expresii JSP sau scriptlet-uri apelând metoda corespunzătoare getXxxsau (cel mai frecvent) folosind o acțiune jsp:getProperty.
Clasa dată bean-ului trebuie să fie în directorul de clasă normal al serverului, nu în partea rezervată claselor care sunt reîncărcate automat după editare. De exemplu, pentru Java Web Server, toate clasele utilizate trebuie să fie plasate într-un director classessau într-un fișier .jar în directorul lib, nu în directorul servlets. Mai jos este un exemplu simplu care încarcă beanși setează/obține un parametru șir simplu.
BeanTest.jsp
<! DOCTYPE HTML PUBLIC „-//W3C//DTD HTML 4.0 Transitional//EN” > < html > < head > < title > Reutilizarea JavaBeans în JSP < / title > < / head > < body > < h1 > Reutilizarea JavaBeans în JSP </ h1 > < jsp : useBean id = "test" class = "hall.SimpleBean" /> < jsp : setProperty name = "test" property = "message" value = "Salut WWW" /> < p > Mesaj : < jsp : getProperty name = "test" property = "message" /> </ p > </ body > </ html >SimpleBean.java
sala de pachete ; public class SimpleBean { private String message = "Textul mesajului nu este setat" ; public String getMessage () { return ( mesaj ); } public void setMessage ( șir de mesaje ) { this . mesaj = mesaj _ } }Câteva detalii suplimentare despre modul de utilizare jsp:useBean. Cel mai simplu mod de a- bean l folosi este folosirea constructului:
< jsp : useBean id = "nume" class = "pachet.clasa" />pentru a încărca beanși apoi utiliza jsp:setPropertyși jsp:getPropertypentru a modifica și obține proprietățile (parametrii). Cu toate acestea, există alte două moduri. În primul rând, puteți utiliza formatul containerului, și anume:
< jsp : useBean ... > Corp </ jsp : useBean >pentru a se asigura că Corpul este executat numai atunci când o instanță beaneste creată pentru prima dată și nu atunci când este găsită și utilizată una existentă bean. După cum se discută mai jos, beanspoate fi partajat, astfel încât nu fiecare expresie jsp:useBeanare ca rezultat o nouă instanță de bean. În al doilea rând, pe lângă id și class , există alte trei atribute pe care le puteți utiliza: scope , type și beanName . Aceste atribute sunt descrise mai jos:
Puteți utiliza jsp:setPropertycele descrise anterior beans. Puteți face acest lucru în două moduri. În primul rând, puteți utiliza jsp:setPropertydupă dar în afara elementului jsp:useBean, așa cum se arată în exemplu:
< jsp : useBean id = "numele meu" ... /> ... < jsp : numele setProperty = "Numele meu" proprietate = "uneaProprietate" ... />În acest caz, se jsp:setPropertyexecută indiferent dacă a fost găsită o instanță existentă beansau a fost creată o instanță nouă. O altă opțiune este să plasați jsp:setPropertyîn corpul elementului jsp:useBean, așa cum se arată într-un alt exemplu:
< jsp : useBean id = "myName" ... > ... < jsp : setProperty name = "myName" property = "someProperty" ... /> </ jsp : useBean >Acest lucru jsp:setPropertyse face numai dacă a fost creată o nouă instanță a obiectului, și nu atunci când este găsită una existentă. O acțiune jsp:setPropertyacceptă următoarele patru atribute:
Dacă nu utilizați nici valuenici param, este același lucru ca și cum ați fi dat un nume care paramse potrivește cu numele property. Puteți aplica acest principiu de utilizare automată a proprietăților de solicitare ale căror nume se potrivesc cu numele proprietăților și mergeți mai departe setând numele proprietății la „ * ” și omițând parametrii valoare și parametri . În acest caz, serverul va procesa proprietățile valide și parametrii de interogare pentru potrivirea numelor identice. Următorul este un exemplu care este folosit beanpentru a crea un tabel cu numere prime. Dacă un parametru există numDigitsîn datele de solicitare, acesta este transmis la bean numDigits. La fel pentru numPrimes. JspPrimes.jsp
<! DOCTYPE HTML PUBLIC „-//W3C//DTD HTML 4.0 Transitional//EN” > < html > < head > < title > Reutilizarea JavaBeans în JSP < / title > < / head > < body > < h1 > Reutilizarea JavaBeans în JSP </ h1 > < jsp : useBean id = "primeTable" class = "hall.NumberedPrimes" /> < jsp : setProperty name = "primeTable" property = "numDigits" /> < jsp : setProperty name = "primeTable" property = "numPrimes" /> < p > Mai multe caractere prime < jsp : getProperty name = " primeTable " property = "numDigits" /> : < jsp : getProperty name = "primeTable" property = "numberedList" /> </ p > </ body > </ html > jsp:getProperty acțiuneAcest element determină valoarea proprietății bean, o convertește într-un șir și o trimite în fluxul de ieșire. Pentru a efectua o acțiune, trebuie setate două atribute: numele bean, care este prestabilit în acțiune jsp:useBeanși numele proprietății a cărei valoare trebuie determinată. Următorul este un exemplu de utilizare a acestei acțiuni:
< jsp : useBean id = "itemBean" ... /> ... < UL > < LI > Număr de articole : < jsp : getProperty name = "itemBean" property = "numItems" / > < LI > Preț unitar : < jsp : getProperty name = "itemBean" proprietate = "unitCost" /> </ UL > jsp:include acțiuneAceastă acțiune vă permite să inserați conținutul fișierelor în pagina generată. Sintaxa acțiunii:
< jsp : include pagina = "adresă URL relativă" flush = "adevărat" />Spre deosebire de directiva include, care inserează un fișier în timpul etapei de traducere JSP a paginii, această acțiune inserează fișierul atunci când pagina este solicitată. Acest lucru duce la o oarecare pierdere a eficienței și elimină posibilitatea codului JSP în fișierul lipit, dar oferă un avantaj semnificativ în flexibilitate.
Un exemplu de inserare a conținutului a patru fișiere într-o pagină JSP:
<! DOCTYPE HTML PUBLIC „-//W3C//DTD HTML 4.01//EN” „http://www.w3.org/TR/html4/strict.dtd” > < html > < head > < title > News </ title > </ head > < body > < h1 > News </ h1 > < p > Iată fragmente din cele mai populare patru articole ale noastre : </ p > < ol > < li >< jsp : include page = "news/Item1. html" flush = "adevărat" /></ li > < li >< jsp : include pagina = "news/Item2.html" flush = "adevărat" /></ li > < li >< jsp : include pagina = " news/ Item3.html" flush = "true" /></ li > < li >< jsp : include page = "news/Item4.html" flush = "true" /></ li > </ ol > </ body > </ html > jsp:forward actionAceastă acțiune vă permite să transmiteți cererea către altă pagină HTML statică, servlet sau pagină JSP. Spre deosebire de o acțiune jsp:include, procesarea paginii curente se încheie. Utilizează un singur atribut , care trebuie să conţină o adresă URLpage relativă , pe baza căreia este ordonat obiectul . Puteți adăuga alți parametri la parametrii de interogare inițiali trecuți către o altă pagină folosind o acțiune . Valoarea atributului poate fi fie o valoare statică, fie o valoare calculată în timpul solicitării, așa cum se arată în următoarele două exemple: requestjsp:parampage
< jsp : înainte pagina = "/utils/errorReporter.jsp" /> < jsp : înainte pagina = "<%= someJavaExpression %>" />De asemenea, folosind o acțiune jsp:forward, puteți transfera controlul către o altă pagină, dar cu condiția ca înainte de a apela această acțiune nu a fost scris nimic în memoria tampon de ieșire (în caz contrar se va arunca o excepție IllegalStateException).
jsp:param action si jsp:params actionAceastă acțiune oferă informații despre tipul nume/valoare. Această acțiune este utilizată în principal împreună cu acțiunile deja familiare jsp:includeși jsp:forward. În plus, poate fi folosit și împreună cu acțiunea jsp:plugin. În alte cazuri, utilizarea acestei acțiuni nu contează. Folosit jsp:paramcu acțiuni jsp:includeși jsp:forwardtrece obiectul original către pagini noi request, care vor fi extinse cu noii parametri. Dacă specificați valori noi pentru parametrii deja existenți, atunci noile valori vor avea prioritate. Folosind o acțiune jsp:params, puteți seta mai mulți parametri simultan
jsp:plugin actionAceastă acțiune vă permite să introduceți elementul OBJECT sau EMBED (în funcție de tipul de browser pe care îl utilizați) necesar pentru a rula applet-uri care utilizează pluginul Java. Cu alte cuvinte, această acțiune servește la generarea codului HTML pentru a încorpora API-ul Java în pagina JSP. În același mod, puteți lipi adresa URL pentru a descărca module pentru API-ul Java de la JavaSoft, care oferă posibilitatea de a rula applet-uri în interiorul browserului. Formularul de înscriere pentru această acțiune arată astfel:
< jsp : tip plugin = "fasole|applet" cod = "fișier de clasă" codebase = "obiect CodeBase" align = "locație" arhivă = "lista de arhive" înălțime = "înălțime" hspace = "spațiu orizontal" jreversion = "versiune" nume = „nume componente” vspace = „spațiu vertical” lățime = „lățime” nspluginurl = „url” iepluginurl = „url” > < jsp : parametri > < jsp : nume param = „nume1” valoare = „valoare1” /> < jsp : nume param = "nume2" valoare = "valoare2" /> ... < jsp : nume param = "numeN" valoare = "valoareN" /> </ jsp : parametri > < jsp : alternativă > </ jsp : rezervă > </ jsp : plugin >Să ne uităm la un exemplu de utilizare a acestei acțiuni în codul appletului:
< jsp : tipul de plugin = cod "applet" = "Blink.class" lățime = 300 înălțime = 100 > < jsp : params > < jsp : param name = lbl value = "Da, este mai delicios decât doar pâinea feliată! " /> < jsp : param name = speed value = "4" /> < jsp : params > < jsp : fallback > Browserul dvs. , dintr -un motiv necunoscut , nu poate rula acest applet </ fallback > </ jsp : plugin >Java | |
---|---|
Platforme | |
Sun Technologies | |
Tehnologii cheie ale terților | |
Poveste |
|
Proprietățile limbajului | |
Limbaje de scripting |
|
conferințe Java |
|