JSP-implisiittiset objektit: täydellinen opetusohjelma

Sisällysluettelo:

Anonim

Mikä on JSP Implicit -objekti?

  • JSP-implisiittiset objektit luodaan JSP: n käännösvaiheessa servletiin.
  • Näitä objekteja voidaan käyttää suoraan palvelumenetelmään kuuluvissa raidoissa.
  • Säiliö luo ne automaattisesti, ja niihin pääsee käsiksi esineiden avulla.

Kuinka monta implisiittistä objektia on käytettävissä JSP: ssä?

Säilössä on 9 tyyppisiä implisiittisiä objekteja:

  1. ulos
  2. pyyntö
  3. vastaus
  4. kokoonpano
  5. sovellus
  6. istunto
  7. pageContext
  8. sivu
  9. poikkeus

Antaa opiskella yksitellen

ulos

  • Out on yksi implisiittisistä objekteista tietojen kirjoittamiseksi puskuriin ja lähdön lähettämiseksi asiakkaalle vastauksena
  • Out-objekti antaa meille pääsyn servletin lähtövirtaan
  • Out on javax.servlet.jsp.jspWriter-luokan kohde
  • Palvelinsovelluksen kanssa työskennellessä tarvitsemme kirjoituskoneobjektin

Esimerkki:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Implisiittinen Guru JSP1 <% int num1 = 10; int num2 = 20;out.println ("num1 on" + num1);out.println ("num2 on" + num2);%>

Koodin selitys:

Koodiriviä 11-12 - ulostuloa käytetään tulostamaan tulostusvirtaan

Kun suoritamme yllä olevan koodin, saamme seuraavan tuloksen:

Tuotos:

  • Lähdössä saadaan arvot num1 ja num2

Pyyntö

  • Pyyntöobjekti on java.servlet.http.HttpServletRequest -ilmentymä ja se on yksi palvelumenetelmän argumenteista
  • Säilö luo sen jokaiselle pyynnölle.
  • Sitä käytetään tietojen, kuten parametrien, otsikkotietojen, palvelimen nimen, jne. Pyytämiseen.
  • Se käyttää getParameter () -pyyntöparametriä.

Esimerkki:

Implicit_jsp2.jsp (lomake, josta pyyntö lähetetään guru.jsp)

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Implisiittinen Guru-lomake JSP2 

Guru.jsp (missä toiminta suoritetaan)

Koodin selitys:

Koodirivi 10-13: Kun implicit_jsp2.jsp (lomake) pyyntö lähetetään, muuttujan käyttäjänimi käsitellään ja lähetetään guru.jsp: lle, joka on JSP: n toiminta.

Guru.jsp

Koodirivi 10-11: Se on toiminto jsp, jossa pyyntö käsitellään, ja käyttäjänimi otetaan lomakkeesta jsp.

Kun suoritat yllä olevan koodin, saat seuraavan tuloksen

Tuotos:

Kun kirjoitat testiä ja napsautat Lähetä-painiketta, saat seuraavan tuloksen "Tervetuloa testi".

Vastaus

  • "Response" on luokan esiintymä, joka toteuttaa HttpServletResponse-käyttöliittymän
  • Säilö luo tämän objektin ja siirtyy _jspservice () -menetelmään parametrina
  • Säiliö luo "vastausobjektin" kutakin pyyntöä varten.
  • Se edustaa vastausta, joka voidaan antaa asiakkaalle
  • Vastaus-implisiittistä objektia käytetään sisältötyyppiin, evästeen lisäämiseen ja uudelleenohjaamiseen vastaussivulle

Esimerkki:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Implisiittinen Guru JSP4 <% response.setContentType ("teksti / html"); %>

Koodin selitys:

Koodirivi 11: Vastausobjektissa voimme asettaa sisältötyypin

Tässä asetamme vain vastausobjektin sisältötyypin. Siksi tätä ei ole tuotettu.

Konfig

  • "Config" on tyyppiä java.servlet.servletConfig
  • Säiliö luo sen jokaiselle jsp-sivulle
  • Sitä käytetään alustusparametrin saamiseen web.xml-tiedostoon

Esimerkki:

Web.xml (määrittää servletin nimen ja kartoituksen)

Implicit_jsp5.jsp (haetaan servlet-nimen arvo)

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Implisiittinen Guru JSP5 <% Merkkijono servletNimi = config.getServletName ();out.println ("Servlet-sovelluksen nimi on" + servlet-nimi);%>

Koodin selitys:

Sisään web.xml

Koodirivi 14-17: Web.xml-ohjelmassa on sovitettu servletit luokkiin.

Implicit_jsp5.jsp

Koodirivi 10-11: Jos haluat saada palvelinsovelluksen nimen JSP: ssä, voimme käyttää config.getServletName, joka auttaa meitä saamaan servletin nimen.

Kun suoritat yllä olevan koodin, saat seuraavan tuloksen:

Tuotos:

  • Servlet-sovelluksen nimi on "GuruServlet", koska nimi on Web.xml-tiedostossa

Sovellus

  • Sovellusobjekti (koodirivi 10) on javax.servlet.ServletContext, ja sitä käytetään kontekstitietojen ja määritteiden hakemiseen JSP: ssä.
  • Sovellusobjekti luodaan yksi kontti sovellusta kohden, kun sovellus otetaan käyttöön.
  • Servletkonteksti-objekti sisältää joukon menetelmiä, joita käytetään vuorovaikutuksessa servlet-säilön kanssa.Voimme löytää tietoja servlet-säilöstä

Esimerkki:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru Implicit JSP6 <% application.getContextPath (); %>

Koodin selitys:

  • Yllä olevassa koodissa sovelluksen attribuutti auttaa saamaan JSP-sivun kontekstipolun.

Istunto

  • Istunnossa on "httpsession" -objekti (koodirivi 10).
  • Istuntoobjektia käytetään istunnon laajuuden määritteiden hankkimiseen, asettamiseen ja poistamiseen, ja sitä käytetään myös istuntotietojen hakemiseen

Esimerkki:

Implicit_jsp7 (määritteeksi on asetettu)

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Implisiittinen JSP <% session.setAttribute ("käyttäjä", "GuruJSP"); %> Napsauta tätä saadaksesi käyttäjänimen 

Implicit_jsp8.jsp (getAttribute)

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> implisiittinen Guru JSP8 <% String name = (String) session.getAttribute ("käyttäjä");out.println ("Käyttäjänimi on" + nimi);%>

Koodin selitys:

Implicit_jsp7.jsp

Koodirivi 11: asetamme määritteen käyttäjä istuntomuuttujaan, ja arvo voidaan noutaa istunnosta, jolle jsp kutsutaan (_jsp8.jsp).

Koodirivi 12: Kutsumme toista jsp: ää href: llä, josta saamme määritetyn käyttäjän attribuutin arvon.

Implicit_jsp8.jsp

Koodirivi 11: Saamme käyttäjäattribuutin arvon istuntoobjektista ja näytämme kyseisen arvon

Kun suoritat yllä olevan koodin, saat seuraavan tuloksen:

Kun napsautat käyttäjänimen linkkiä. Saat seuraavan tuloksen.

Tuotos:

  • Kun napsautamme implicit_jsp7.jsp: ssä olevaa linkkiä, meidät ohjataan toiselle jsp-sivulle, eli (_jsp8.jsp) -sivulle ja saamme arvon käyttäjän määritteen (_jsp7.jsp) istuntoobjektista.

pageContext:

  • Tämä objekti on tyyppiä pagecontext.
  • Sitä käytetään määritteiden hankkimiseen, asettamiseen ja poistamiseen tietystä laajuudesta

Laajuuksia on 4 tyyppiä:

  • Sivu
  • Pyyntö
  • Istunto
  • Sovellus

Esimerkki:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Implisiittinen Guru JSP9 <% pageContext.setAttribute ("opiskelija", "gurustudent", pageContext.PAGE_SCOPE);Merkkijonon nimi = (Merkkijono) pageContext.getAttribute ("opiskelija");out.println ("opiskelijan nimi on" + nimi);%>

Koodin selitys:

Koodirivi 11: asetamme määritteen käyttämällä pageContext-objektia, ja sillä on kolme parametria:

  • Avain
  • Arvo
  • Soveltamisala

Yllä olevassa koodissa avain on opiskelija ja arvo on "herkkä", kun taas laajuus on sivun laajuus. Tässä laajuus on "sivu" ja se voi käyttää vain sivun laajuutta.

Koodirivi 12: Saamme attribuutin arvon käyttämällä pageContext

Kun suoritat yllä olevan koodin, saat seuraavan tuloksen:

Tuotos:

  • Tulosteen teksti "opiskelijan nimi on ylellinen".

Sivu

  • Sivun implisiittinen muuttuja sisältää parhaillaan suoritettavan servlet-objektin vastaavalle jsp: lle.
  • Toimii tällä objektilla nykyiselle jsp-sivulle.

Esimerkki:

Tässä esimerkissä käytämme sivuobjektia sivun nimen saamiseksi toString-menetelmällä

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Implisiittinen Guru JSP10 <% String pageName = sivu.toString ();out.println ("Sivun nimi on" + sivun nimi);%>

Koodin selitys:

Koodirivi 10-11: Tässä esimerkissä yritämme käyttää sivuobjektin toString () menetelmää ja yrittää saada JSP-sivun merkkijononimen.

Kun suoritat koodin, saat seuraavan tuloksen:

Tuotos:

  • Output on merkkijononimi yllä olevalle jsp-sivulle

Poikkeus

  • Poikkeus on heitettävän luokan implisiittinen kohde.
  • Sitä käytetään poikkeusten käsittelyyn JSP: ssä.
  • Poikkeusobjektia voidaan käyttää vain virhesivuilla.

    Esimerkki:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1" isErrorPage = "true"%> Implisiittinen Guru JSP 11 <% int [] num1 = {1,2,3,4};out.println (numero1 [5]);%><% = poikkeus%>

Koodin selitys:

Koodirivi 10-12 - Siinä on joukko numeroita, eli num1, jossa on neljä elementtiä. Yritämme tulosteessa tulostaa taulukon viidennen elementin num1: stä, jota ei ole ilmoitettu matriisiluettelossa. Joten sitä käytetään jsp: n poikkeuskohteen saamiseen.

Tuotos:

Saamme ArrayIndexOfBoundsException-taulukon, josta saamme viidennen elementin num1-taulukon.