Útmutató a JSTL könyvtárhoz

1. Áttekintés

A JavaServer Pages Tag Library (JSTL) egy olyan címkekészlet, amely felhasználható néhány általános művelet végrehajtására, például loopolásra, feltételes formázásra és másokra.

Ebben az oktatóanyagban megvitatjuk, hogyan kell beállítani a JSTL-t, és hogyan kell használni a számos címkét.

2. Beállítás

A JSTL funkcióinak engedélyezéséhez hozzá kell adnunk a könyvtárat a projektünkhöz. Egy Maven-projekt esetében hozzáadjuk a függőséget pom.xml fájl:

 javax.servlet jstl 1.2 

Ha a könyvtárat hozzáadjuk a projektünkhöz, a végső beállítás az lesz, hogy hozzáadjuk az alap JSTL címkét és az összes többi címke névtérfájlját a JSP-hez a taglib irányelv használatával, így:

Ezután megvizsgáljuk ezeket a címkéket, amelyek nagyjából öt kategóriába vannak csoportosítva.

3. Alapcímkék

A JSTL törzscímkekönyvtár olyan alapműveletek végrehajtásához tartalmaz címkéket, mint például értékek nyomtatása, változók deklarálása, kivételkezelés, iterációk végrehajtása és feltételes utasítások deklarálása.

Vessünk egy pillantást az alapvető címkékre.

3.1. A Címke

a változókban lévő értékek vagy egy implicit kifejezés eredményének megjelenítésére szolgál.

Három attribútuma van: érték, alapértelmezett és escapeXML. A escapeXML attribútum kimeneti nyers XML címkéket tartalmaz érték attribútum vagy annak melléklete.

Egy példa tag lesz:

3.2. A Címke

A címkét a hatókörű változók JSP-ben történő deklarálásához használják. Deklarálhatjuk a változó nevét és értékét is a var és érték attribútumok.

Példa a következő formára:

3.3. A Címke

A tag eltávolítja a hatókörű változókat, ami egyenértékű a hozzárendeléssel nulla változóra. Meg kell var és hatálya attribútum a hatálya amelynek alapértelmezett értéke az összes hatókör.

Az alábbiakban bemutatunk egy példát a címke:

3.4. A Címke

A a címke minden olyan kivételt elkap, amelyet a házába dobtak. Ha a kivételt dobják, akkor az értéke a var ennek a címkének az attribútuma.

A tipikus használat a következőképpen nézhet ki:

És annak ellenőrzésére, hogy a kivétel elvetődött-e, a címke az alábbiak szerint:

A kivétel: $ {kivételThrown}

Van egy kivétel: $ {kivételThrown.message}

3.5. A Címke

A egy feltételes címke, amely csak akkor jeleníti meg vagy hajtja végre a zárt parancsfájlokat teszt attribútum igaznak értékeli. Az értékelés eredménye abban tárolható var tulajdonság.

3.6. , és Címkék

A olyan szülőcímke, amelyet kapcsolószerű vagy if-else kifejezések végrehajtására használnak. Két alcímke van; és amelyek az if / else-if és else rendszert képviselik.

vesz egy teszt attribútum, amely az értékelendő kifejezést tartja. Az alábbiakban bemutatjuk a következő címkék használatát:

3.7. A Címke

A címke kezeli a tartalom beolvasását és feltárását abszolút vagy relatív URL-ekből.

Használhatjuk a url és var attribútumok, amelyek az URL-t, illetve az URL-ről letöltött tartalmat tárolják. Például importálhatunk tartalmat egy URL-ből:

3.8. A Címke

A tag hasonló a Java for, while vagy do-while szintaxisához. A elemeket attribútum tartalmazza az iterálni kívánt elemek listáját, míg kezdődik és vége az attribútumok megtartják a kezdő és a befejező indexet (nulla indexelés).

tag is van egy lépés attribútum, amely minden egyes iteráció után szabályozza az index növekedésének nagyságát. Az alábbiakban bemutatunk egy felhasználási példát:

 Tétel 

3.9. A Címke

A a tag felosztására szolgál Húr tokenekké és azokon keresztül iterálva.

Hasonló tag, van egy elemeket attribútum és egy további behatárolni attribútum, amely a Húr mint ez:

3.10. és Címkék

A címke hasznos egy URL formázásához megfelelő kérési kódolással. a formázott URL a var tulajdonság.

tag is van egy alcímke, amelyet az URL-paraméterek megadására használnak. Az alábbiakban bemutatunk egy példát:

3.11. A Címke

A tag végrehajtja az URL átírását és átirányítja a felhasználót az abban megadott oldalra url tulajdonság. Egy tipikus használati eset így fog kinézni:

4. Címkék formázása

A JSTL formázó tagkönyvtár kényelmes módot kínál a szöveg, számok, dátumok, idők és egyéb változók formázására a jobb megjelenítés érdekében.

A JSTL formázó címkék felhasználhatók a weboldal nemzetközivé tételének fokozására is.

A formázó címkék használata előtt hozzá kell adnunk a taglib-et a JSP-hez:

Határozzuk meg a különféle formázó címkéket és azok felhasználásának módját.

4.1. A Címke

A címke hasznos a dátum vagy az idő formázásában. A érték attribútum tartalmazza a formázandó dátumot és a típus attribútum a három érték egyikét veszi fel; dátum, idő vagy mindkettő.

is van egy minta attribútum, ahol megadhatjuk a kívánt formázási mintát. Az alábbiakban bemutatunk egy példát az egyik mintára:

4.2. A Címke

A tag hasonló a címke.

A különbség az, hogy címkével megadhatjuk azt a formázási mintát, amelyben az alapul szolgáló dátum elemzőnek elvárható, hogy a dátum értéke legyen.

Elemezhetjük a dátumokat:

4.3. A Címke

A címke kezeli a számok megjelenítését egy adott mintában vagy pontosságban, amely lehet az egyik szám, pénznem vagy százalék annak meghatározása szerint típus tulajdonság. A példa a lenne:

4.4. A Címke

A tag hasonló a címke. A különbség az, hogy tag megadhatjuk azt a formázási mintát, amelyben az alapul szolgáló számelemzőnek számolnia kell a számmal.

Ezt így használhatnánk:

4.5. A Címke

A tag egy szülőcímke a címke. elkészíti a csomagot basename a mellékelt attribútum címkék.

címke hasznos a nemzetközivé válás lehetővé tételéhez, mivel megadhatunk területi beállításokat. A tipikus használat a következő:

4.6. A Címke

A a címkét egy erőforráscsomag JSP-n belüli betöltésére és az egész oldalon keresztül elérhetővé tételére használják. A betöltött erőforráscsomag a var attribútuma címke. Csomagot állíthatunk be:

4.7. A Címke

A tag segítségével beállíthatjuk a területi beállításokat a deklaráció után elhelyezett szakaszokban a JSP-ben. Általában ezt állítjuk be:

Az fr_FR jelentése a területi beállítás, amely ebben az esetben francia.

4.8. A Címke

A tag egy szülőcímke, amely meghatározza az időzónát, amelyet a házában lévő címkék bármilyen időformázási vagy elemzési művelethez használnak.

Ezt az időzóna paramétert az adja meg érték tulajdonság. Az alábbiakban bemutatunk egy példa felhasználást:

4.9. A Címke

A címke felhasználható az abban megadott időzóna másolására érték attribútum a benne megadott hatókörű változóhoz var tulajdonság. Ezt a következőképpen definiáljuk:

4.10. A Címke

A <>> tag az internacionalizációs üzenet megjelenítésére szolgál. A lekérendő üzenet egyedi azonosítóját továbbítani kell neki kulcs tulajdonság.

Egy adott csomag az üzenet megkeresésére, amelyet a csomag tulajdonság.

Ez így nézhet ki:

4.11. A Címke

A címke hasznos az űrlapok kódolási típusának megadásában, amelyek művelettípusa: post.

A használni kívánt karakterkódolás nevét a kulcs attribútuma címke.

Lássunk egy példát alább:

5. XML-címkék

A JSTL XML tag-könyvtár kényelmes módokat kínál az XML-adatokkal való interakcióra a JSP-n belül.

Ahhoz, hogy hozzáférhessünk ezekhez az XML-címkékhez, hozzáadjuk a címkekönyvtárat a JSP-hez:

Nézzük meg a különböző címkéket a JSTL XML címkék könyvtárában.

5.1. A Címke

A tag hasonló a scriptlet tag JSP-ben, de kifejezetten az XPath kifejezésekhez használják.

tag van egy válassza és escapeXML az XPath kifejezés megadásához használt attribútumok a Húr és speciális XML karakterek elkerülése.

Egyszerű példa:

$ output a fentiekben egy előre betöltött XSL fájlra utal.

5.2. A Címke

A címke a benne megadott XML adatok elemzésére szolgál xml vagy doc attribútum vagy burkolat. Tipikus példa lenne:

5.3. A Címke

A tag beállítja a benne megadott változót var attribútum a kiértékelt XPath kifejezéshez válassza tulajdonság. Tipikus példa lenne:

5.4. A Címke

A tag feldolgozza a testét, ha az XPath kifejezés hozzá van adva válassza attribútum igaznak értékeli.

Az értékelés eredménye abban tárolható var tulajdonság.

Egy egyszerű használati eset így fog kinézni:

 A dokumentumnak legalább egy eleme van. 

5.5. A Címke

A címkét használjuk az XML dokumentum csomópontjai közötti hurokhoz. Az XML dokumentumot a címkék válassza tulajdonság.

Akárcsak a core tag, tag van kezdet, vég és lépés attribútumokat.

Így lenne:

  • Termék név:

5.6. , és Címkék

A tag egy szülőcímke, amelyet switch-szerű vagy if / else-if / else kifejezések végrehajtására használnak, és nincsenek attribútumai, de mellékel és címkék.

tag hasonló, ha / else-if, és a-t veszi válassza attribútum, amely az értékelendő kifejezést tartja.

tag hasonló a else / default záradékhoz, és nincs attribútuma.

Az alábbiakban bemutatunk egy minta felhasználási esetet:

  A termék kategóriája a cipők A termék kategóriája a Heels Ismeretlen kategória. 

5.7. és Címkék

A címke átalakít egy XML dokumentumot a JSP-n belül egy eXtensible Stylesheet Language (XSL) alkalmazásával.

Az XML dokumentum vagy Húr az átalakítandó a doc attribútumot, miközben az alkalmazandó XSL átkerül a xslt attribútuma címke.

címke a címkét, és arra szolgál, hogy beállítson egy paramétert az átalakítási stíluslapon.

Egyszerű felhasználási eset a következő:

6. SQL címkék

A JSTL SQL tagkönyvtár címkéket biztosít a relációs adatbázis működéséhezs.

A JSTL SQL címkék engedélyezéséhez hozzáadjuk a taglib-et a JSP-hez:

A JSTL SQL címkék különböző adatbázisokat támogatnak, beleértve a MySQL-t, az Oracle-t és a Microsoft SQL Server-t.

Ezután megvizsgáljuk a rendelkezésre álló különböző SQL címkéket.

6.1. A Címke

A tag a JDBC konfigurációs változók meghatározására szolgál.

Ezek a konfigurációs változók a illesztőprogram, URL, felhasználó, jelszó és adatforrás tulajdonságai a címke az alábbiak szerint:

A fentiekben a var attribútum olyan értéket tartalmaz, amely azonosítja a társított adatbázist.

6.2. A Címke

A tag egy SQL SELECT utasítás végrehajtására szolgál, amelynek eredményét a benne meghatározott hatókörű változóban tárolják var tulajdonság. Általában ezt a következőképpen definiáljuk:

 SELECT * a USERS-től; 

címkék sql attribútum tartalmazza a végrehajtandó SQL parancsot. Egyéb attribútumok a következők: maxRows, startRow, és adatforrás.

6.3. A Címke

A tag hasonló a tag, de csak az SQL INSERT, UPDATE vagy DELETE műveleteket hajtja végre, amelyekhez nem szükséges visszatérési érték.

Példa a következőkre:

 INSERT IN USERS (first_name, last_name, email) VALUES ('Grace', 'Adams', '[email protected]'); 

címkék var attribútum megtartja azon sorok számát, amelyeket az abban megadott SQL utasítás érintett sql tulajdonság.

6.4. A Címke

A tag egy alcímke, amely belül használható vagy címke egy érték helyőrzőjének megadásához az sql utasításban, így:

 TÖRLÉS A FELHASZNÁLÓKTÓL HOL email =? 

a tag egyetlen attribútummal rendelkezik; érték amely a szállítandó értéket tartja.

6.5. A Címke

A címkét használjuk vagy címke egy dátum és idő érték megadásához egy érték helyőrzőhöz az sql utasításban.

A JSP-nkben ezt így definiálhatjuk:

 UPDATE Users SET regisztrált =? HOL e-mail =? 

Mint a címke, tag van egy érték attribútum egy további típus attribútum, amelynek értéke az egyik lehet dátum idő vagy időbélyeg (dátum és idő).

6.6. A Címke

A tag segítségével csoportosítva hozzák létre a JDBC tranzakciószerű műveleteket és címkék együtt:

  FRISSÍTÉS Felhasználók BEÁLLÍTÁSA first_name = 'Patrick-Ellis' WHERE email = "[email protected]" UPDATE Users SET last_name = 'Nelson' WHERE email = '[email protected]' INSERT INTO Users (first_name, last_name, email) VALUES ('Grace) ',' Adams ',' [e-mail védett] '); 

A címke biztosítja, hogy minden adatbázis-műveletet sikeresen feldolgozzanak (elkötelezzék magukat), vagy minden kecsesen meghiúsuljon (visszagörgetve), ha valamelyik műveletben hiba lép fel.

7. JSTL funkciók

A JSTL módszerek a JSP-n belüli adatkezelés segédprogramjai. Míg egyes funkciók különböző adattípusokat vesznek fel, a legtöbbjüket erre szánják Húr manipuláció.

A JSTL módszerek engedélyezéséhez a JSP-ben hozzáadjuk a taglibet az oldalunkhoz:

Nézzük meg ezeket a függvényeket és azok használatát.

7.1. fn: tartalmaz () és fn: tartalmazIgnoreCase ()

A fn: tartalmaz () módszer értékeli a Húr hogy ellenőrizze, hogy tartalmaz-e egy ilyen alszöveget:

A karakterláncban található az első

A fn: tartalmaz () a funkció kettőt vesz igénybe Húr érvek; az első a forrás Húr a második érv pedig az alfej. Logikai értéket ad vissza az értékelés eredményétől függően.

A fn: tartalmazIgnoreCase () függvény a kis- és nagybetűk különbsége fn: tartalmaz () módszerrel és így használható:

Talált 'első' karakterlánc

Talált 'FIRST' karakterlánc

7.3. A fn: endWith-tel () Funkció

A fn: endWith-tel () függvény értékeli a Húr annak ellenőrzése, hogy az utótag megfelel-e egy másik alszövegnek. Két érvre van szükség; az első érv a Húr amelynek utótagját tesztelni kell, míg a második argumentum a tesztelt utótag.

Ezt úgy definiálhatjuk:

A karakterlánc vége: 'string'

7.4. A fn: escapeXml () Funkció

A fn: escapeXML () függvény arra szolgál, hogy elkerülje a bemenet XML jelölését Húr mint ez:

$ {fn: escapeXml (string1)}

7.5. A fn: indexOf () Funkció

A fn: indexOf () függvény nézegeti a Húr és visszaadja az adott sztring első előfordulásának indexét.

Két érvre van szükség; az első a forrás Húr a második argumentum pedig az első előfordulás egyeztetésének és visszaadásának részszövege.

fn: indexOf () A függvény egész számot ad vissza, és így használható:

Tárgymutató: $ {fn: indexOf (string1, "first")}

7.6. A fn: csatlakozás () Funkció

A fn: csatlakozás () függvény összefűzi egy tömb összes elemét egyetlen egységbe Húr és így használható:

7.7. A fn: hossz () Funkció

A fn: hossz () függvény adja vissza az adott gyűjteményben lévő elemek számát vagy az adott karakterek számát Húr.

A fn: hossz () a funkció egyetlen Tárgy amely lehet vagy gyűjtemény, vagy a Húr és egy egész számot ad vissza:

Hossz: $ {fn: length (string1)}

7.8. A fn: csere () Funkció

A fn: csere () függvény lecseréli egy karakterlánc egy sztringjének minden előfordulását egy másikra Húr.

Három érvre van szükség; a forrás Húr, a forrás lekérdezéséhez tartozó sztring és a Húr a szubsztring minden előfordulásának helyettesítésére, így:

7.9. A fn: split () Funkció

A fn: split () függvény osztott műveletet hajt végre a Húr a megadott elválasztó segítségével. Itt van egy példa a felhasználásra:

7.10. A fn: kezdődik () Funkció

A fn: kezdődik () függvény ellenőrzi az a előtagot Húr és igaz értéket ad vissza, ha egy adott alszöveghez így illeszkedik:

A karakterlánc „Ez” -vel kezdődik

7.11. A fn: szubsztring () Funkció

A fn: szubsztring () függvény létrehoz egy részstringet egy forrásból Húr a megadott kezdő és befejező indexnél. Így használnánk:

7.12. A fn: substringAfter () Funkció

A fn: substringAfter () függvény ellenőrzi a forrást Húr adott sztringre és visszaadja a Húr közvetlenül a megadott részsor első előfordulása után.

Így használnánk:

7.13. A fn: substringBefore () Funkció

A fn: substringBefore () függvény ellenőrzi a forrást Húr adott sztringre és visszaadja a Húr közvetlenül a megadott szubsztring első előfordulása előtt.

A JSP oldalunkon így fog kinézni:

7.14. A fn: toLowerCase () Funkció

A fn: to LowerCase () függvény az összes karaktert átalakítja a Húr a kisbetűkhöz, és így használható:

7.15. A fn: toUpperCase () Funkció

A fn: toUpperCase () függvény az összes karaktert átalakítja a Húr nagybetűvel:

7.16. A fn: trim () Funkció

A fn: trim () funkció eltávolítja a megelőző és záró szóközöket a Húr:

9. Következtetés

Ebben a kiterjedt cikkben megvizsgáltuk a különböző JSTL címkéket és azok használatát.

Szokás szerint a kódrészletek megtalálhatók a GitHubon.