Articles

JSP: n Elinkaaritapahtumat selitetty

JSP: t ovat itse asiassa servlettejä, kuten olette jo nähneet. Kontti muuntaa kaikki JSP tiedostot servlets ennen niiden suorittamista. JSPs vain tarjota helppo tapa luoda komponentteja, jotka sisältävät ei-java-koodia.

kun JSP-sivu on luotu ja otettu käyttöön, säiliö tekee joitakin elinkaaritapahtumia, joihin kuuluu myös joidenkin servletin elinkaaritapahtumien kaltaisten menetelmien kutsuminen.

  1. JSP page translation (validointi -, käännös -, kokoamisvaihe)
  2. kuormitusluokka
  3. Jspinit-menetelmää kutsutaan
  4. _jspService-menetelmää kutsutaan
  5. jspDestroy-menetelmää kutsutaan

JSP page translation (validointi, käännös, kokoamisvaihe)

validointi suoritetaan ennen kääntämistä. Syntaksitarkistus tapahtuu ja kaikki viittaukset tunnistekirjastoihin, toimintoihin ja EL-toimintoihin JSP: ssä validoidaan sen varmistamiseksi, että ne ovat olemassa ja että ne ovat sivulla, ja jos on ongelmia, tapahtuu virhe, joka estää käännösprosessin jatkumisen.

ennen validointia JSP-sivu muunnetaan XML-näkymäksi ja tämä xml is-näkymä validoidaan ja käännetään.

Alkuperäinen JSP-syötesivu on käännetty servletin lähdekoodiksi. Samalla se kirjoittaa tulostuslauseet jokaiselle Ei-java-rivillesi JSP: ssä. Tämä luotu servlet olisi toteutettava HttpJspPage tai sen vanhemman JspPage perustuu jos ympäristö on HTTP-pohjainen tai ei. Aiheeseen liittyvä blogi: kulmaharjoittelu Chennaissa

  • toimittajalla on tyypillisesti erikoistunut JSP base servlet, joka laajentaa ja toteuttaa kaikki tarvittavat luokat tai rajapinnat. Tomcatissa tätä kutsutaan org: ksi.apassit.jasper.suorituksen.Httpjspase. HttpJspBase laajentaa HttpServlet ja GenericServlet, ja toteuttaa HttpJspPage, JspPage, Serialisable, Servlet, ServletConfig.

Servlet-lähdekoodi kootaan tämän jälkeen servlet-luokan tiedostoksi.

lähdöt

  • käännösvaiheessa on kaksi lähdettä.
  • ensimmäinen on väliaikainen tuloste: Java-lähdekooditiedosto servletille.
  • toinen on Servlet-lähteestä koottu luokkatiedosto.
  • luokkatiedosto säilytetään tulevaa käyttöä varten, ja useimmat JSP-säiliöt saattavat säilyttää tai antaa sinulle vaihtoehdon, jolla voit säilyttää servlet-lähteen virheenkorjausta varten.
  • Tomcatissa JSP-käännöksen aikana luotu servlet Java-lähde ja käännetty Luokka säilytetään oletusarvoisesti missä hakemistossa < Tomcat-Installation – Directory>/work/Catalina/localhost/<context-directory>/org/apache/jsp.

ajoitus

  • vaikka JSP-säiliöllä on päätäntävalta käännöksen ajankohdasta, oletuksena (useimmissa tapauksissa) JSP kootaan servletiksi ja ladataan sen jälkeen, kun sitä käytetään ensimmäisen kerran.
  • tämä saattaa aiheuttaa pientä viivettä ensimmäiseen pyyntöön, mutta myöhempiin pyyntöihin ei tule viivettä.
  • tietyissä sovelluspalvelimissa voi myös esikäännellä JSPs: iä ennen niiden lisäämistä purkkeihin.

virheet

  • jos sivu ei onnistu kääntämään, HTTP-pyynnön pitäisi antaa 500 (palvelinvirhe) tilakoodi, joka on ilmoitettu HTTP-vastauksessa.

kuormitusluokka

  • luotu servlet-Luokka ladataan sovelluksen luokkakuormaajalla.

Instantiaatti

  • syntyy servlet-luokan instanssi.
  • jokaiselle JSP: n servlet-kartoitusilmoitukselle verkossa.xml (samanlainen kuin servlets), Uusi instanssi lisäksi standardi JSP tiedosto-instanssi luodaan. Jos minulla on JSP-sivu kontekstijuuressa, ja olen myös rekisteröinyt saman JSP-sivun Webissä.xml, minulla on kaksi esiintymää, että JSP luotu.

jspInit-menetelmää kutsutaan nimellä

  • voit ohittaa tämän menetelmän.

_jspService-menetelmää kutsutaan nimellä

  • kun pyyntöjä tehdään, kontti kutsuu generoidun servletin palvelu(pyyntö, vastaus) – menetelmää, jonka tulee kutsua menetelmää _jspService () välittäen pyyntö-ja vastausparametrit.
  • meidän ei pitäisi ohittaa _jspserviceä () JSP-sivultamme. Tämä menetelmä edustaa sivun lähde Java-koodimuodossa-se on jopa säiliön sivun generaattorit toteuttaa tämän menetelmän kunkin yksittäisen JSP.
  • JSP spec on kuitenkin riittävän joustava mukautumaan kaikkiin pyyntö – / vastausprotokolliin, jotka haluat ottaa käyttöön ohittamalla tämän menetelmän, ja vain tätä varten sinun täytyy ohittaa _jspService-menetelmä.

jspdestroyn menetelmää kutsutaan

  • kutsutaan ennen kuin JSP: n servletin tapaus mitätöidään ja roskat kerätään

tärkeitä muistettavia kohtia

Vastaa

Sähköpostiosoitettasi ei julkaista.