jstl-tutorials
- นี่คือ บทช่วยสอน JSTL ของฉันซึ่งเกี่ยวกับ JSTL (ไลบรารีแท็ก JSP) ที่ให้ความเข้าใจที่ชัดเจนเกี่ยวกับแท็ก JSTL ทั้งหมดและฟังก์ชันการทำงานของพวกเขาด้วยการใช้งานรหัสจริงสำหรับแต่ละแท็ก
การแนะนำ
- JavaServer Pages Library Standard Tag Library (JSTL) เป็นคอลเลกชันของแท็ก JSP ที่มีประโยชน์ซึ่งห่อหุ้มฟังก์ชั่นหลักที่ใช้กันทั่วไปกับแอปพลิเคชัน JSP จำนวนมาก
- JSTL มีการสนับสนุนงานโครงสร้างทั่วไปเช่นการวนซ้ำและเงื่อนไขแท็กสำหรับการจัดการเอกสาร XML แท็กสากลและแท็ก SQL
- นอกจากนี้ยังมีกรอบสำหรับการรวมแท็กที่กำหนดเองที่มีอยู่กับแท็ก JSTL
ติดตั้งไลบรารี JSTL
- ในการเริ่มทำงานกับ JSP tages คุณต้องติดตั้งไลบรารี JSTL ก่อน
- หากคุณใช้คอนเทนเนอร์ Apache Tomcat ให้ทำตามสองขั้นตอนเหล่านี้ -
ขั้นตอนที่ 1:
- ดาวน์โหลดการแจกแจงไบนารีจาก Apache Standard Taglib และแกะไฟล์บีบอัด
ดาวน์โหลดไฟล์ jar ได้ที่นี่: JSTL JAR 1.2
ขั้นตอนที่ 2:
-หากต้องการใช้ TagLib มาตรฐานจากการแจกแจง Jakarta Taglibs เพียงคัดลอกไฟล์ JAR ในไดเรกทอรี 'LIB' ของการแจกจ่ายไปยัง WebApps Root Web-inf lib ของแอปพลิเคชัน
[หมายเหตุ: หากคุณกำลังสร้างโครงการ Maven ให้ใช้การพึ่งพาต่อไปนี้เพื่อเพิ่มไฟล์ JSTL JAR]
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
ในการใช้ไลบรารีใด ๆ คุณต้องรวมคำสั่งที่ด้านบนของแต่ละ JSP ที่ใช้ห้องสมุด
ข้อได้เปรียบของ JSTL
- การพัฒนาที่รวดเร็ว - JSTL มีแท็กมากมายที่ทำให้ JSP ง่ายขึ้น
- Code Reusability - เราสามารถใช้แท็ก JSTL ในหน้าต่างๆ
- ไม่จำเป็นต้องใช้ Scriptlet Tag - หลีกเลี่ยงการใช้ Tag Scriptlet
แท็ก jstl
JSTL Core Tags:
แท็กแกน JSTL ให้การสนับสนุนสำหรับการทำซ้ำตรรกะตามเงื่อนไขข้อยกเว้นการจับ URL การตอบสนองไปข้างหน้าหรือเปลี่ยนเส้นทาง ฯลฯ
ในการใช้แท็ก JSTL Core เราควรรวมไว้ในหน้า JSP เช่นด้านล่าง
< %@ taglib uri = "https://java.sun.com/jsp/jstl/core" prefix = "c" %>
แท็กการจัดรูปแบบและการแปล JSTL:
แท็กการจัดรูปแบบ JSTL มีไว้สำหรับการจัดรูปแบบของตัวเลขวันที่และการสนับสนุน I18N ผ่านสถานที่และการรวมกลุ่มทรัพยากร
เราสามารถรวมแท็ก JSTL เหล่านี้ใน JSP ด้วยไวยากรณ์ด้านล่าง:
< %@ taglib uri = "https://java.sun.com/jsp/jstl/fmt" คำนำหน้า = "fmt" %> %>
แท็ก JSTL SQL:
แท็ก JSTL SQL ให้การสนับสนุนสำหรับการโต้ตอบกับฐานข้อมูลเชิงสัมพันธ์เช่น Oracle, MySQL เป็นต้น
การใช้แท็ก JSTL SQL เราสามารถเรียกใช้คิวรีฐานข้อมูลเรารวมแท็ก JSTL เหล่านี้ใน JSP ด้วยไวยากรณ์ด้านล่าง:
< %@ taglib uri = "https://java.sun.com/jsp/jstl/sql" คำนำหน้า = "sql" %> %>
แท็ก JSTL XML:
แท็ก JSTL XML ใช้ในการทำงานกับเอกสาร XML เช่นการแยกวิเคราะห์ XML การแปลงข้อมูล XML และการประเมินการแสดงออกของ XPATH -Syntax เพื่อรวมแท็ก JSTL XML ในหน้า JSP คือ:
< %@ taglib uri = "https://java.sun.com/jsp/jstl/xml" prefix = "x" %>
แท็กฟังก์ชั่น STL:
แท็ก JSTL มีฟังก์ชั่นจำนวนหนึ่งที่เราสามารถใช้ในการดำเนินการทั่วไปส่วนใหญ่ใช้สำหรับการจัดการสตริงเช่นการต่อสตริงการแยกสตริง ฯลฯ ฯลฯ
ไวยากรณ์เพื่อรวมฟังก์ชั่น JSTL ในหน้า JSP คือ:
< %@ taglib uri = "https://java.sun.com/jsp/jstl/functions" prefix = "fn" %>
แท็กแกน JSTL ⌚
<c: out>
- ในการเขียนบางอย่างในหน้า JSP เราสามารถใช้ EL ด้วยแท็กนี้ได้
<C: นำเข้า>
- เหมือนกับ JSP: รวมหรือรวมคำสั่ง
<C: เปลี่ยนเส้นทาง>
- เปลี่ยนเส้นทางคำขอไปยังทรัพยากรอื่น
<c: ตั้งค่า>
- ในการตั้งค่าตัวแปรในขอบเขตที่กำหนด
<C: ลบ>
- เพื่อลบตัวแปรออกจากขอบเขตที่กำหนด
<c: จับ>
- เพื่อจับข้อยกเว้นและห่อลงในวัตถุ
<c: ถ้า>
- ตรรกะแบบมีเงื่อนไขอย่างง่ายใช้กับ EL และเราสามารถใช้เพื่อประมวลผลข้อยกเว้นจาก <c: catch>
<C: เลือก>
- แท็กแบบมีเงื่อนไขอย่างง่ายที่กำหนดบริบทสำหรับการดำเนินการตามเงื่อนไขพิเศษร่วมกันซึ่งทำเครื่องหมายด้วย <c: เมื่อ> และ <c: มิฉะนั้น>
<c: เมื่อ>
- Subtag ของ <c: เลือก> ที่มีร่างกายของมันหากเงื่อนไขของมันประเมินว่า 'จริง'
<C: มิฉะนั้น>
- Subtag ของ <c: เลือก> ที่มีร่างกายของมันหากเงื่อนไขของมันประเมินว่า 'เท็จ'
<C: foreach>
- สำหรับการทำซ้ำมากกว่าคอลเลกชัน
<C: Fortokens>
- สำหรับการวนซ้ำมากกว่าโทเค็นคั่นด้วยตัวคั่น
<c: param>
- ใช้กับ <c: นำเข้า> เพื่อส่งพารามิเตอร์
<c: url>
- เพื่อสร้าง URL ด้วยพารามิเตอร์สตริงแบบสอบถามเสริม
แท็กการจัดรูปแบบ JSTL ⌛
<fmt: formatnumber>
- เพื่อแสดงค่าตัวเลขด้วยความแม่นยำหรือรูปแบบเฉพาะ
<fmt: parsenumber>
- แยกวิเคราะห์การแสดงสตริงของตัวเลขสกุลเงินหรือเปอร์เซ็นต์
<fmt: formatdate>
- จัดรูปแบบวันที่และ/หรือเวลาโดยใช้รูปแบบและรูปแบบที่ให้มา
<fmt: parsedate>
- แยกวิเคราะห์การแสดงสตริงของวันที่และ/หรือเวลา
<fmt: Bundle>
- โหลดชุดทรัพยากรที่จะใช้โดยแท็กตัว
<fmt: setlocale>
- เก็บสถานที่ที่กำหนดในตัวแปรการกำหนดค่าสถานที่
<fmt: setbundle>
- โหลดชุดข้อมูลทรัพยากรและเก็บไว้ในตัวแปรที่กำหนดขอบเขตที่มีชื่อหรือตัวแปรการกำหนดค่าชุดข้อมูล
<fmt: เขตเวลา>
- ระบุเขตเวลาสำหรับการจัดรูปแบบหรือการแยกวิเคราะห์การกระทำที่ซ้อนกันในร่างกาย
<fmt: settimezone>
- จัดเก็บโซนเวลาที่กำหนดในตัวแปรการกำหนดค่าโซนเวลา
<fmt: ข้อความ>
<fmt: การร้องขอการเข้ารหัส>
- ตั้งค่าการเข้ารหัสอักขระคำขอ
JSTL SQL TAGS ⏩
<SQL: setDataSource>
- สร้างแหล่งข้อมูลอย่างง่ายที่เหมาะสำหรับการสร้างต้นแบบเท่านั้น
<SQL: Query>
- ดำเนินการสืบค้น SQL ที่กำหนดไว้ในร่างกายหรือผ่านแอตทริบิวต์ SQL
<SQL: อัปเดต>
- ดำเนินการอัปเดต SQL ที่กำหนดไว้ในร่างกายหรือผ่านแอตทริบิวต์ SQL
<SQL: param>
- ตั้งค่าพารามิเตอร์ในคำสั่ง SQL เป็นค่าที่ระบุ
<SQL: DateParam>
- ตั้งค่าพารามิเตอร์ในคำสั่ง SQL เป็นค่า java.util.date ที่ระบุ
<SQL: ธุรกรรม>
- จัดเตรียมองค์ประกอบการดำเนินการฐานข้อมูลที่ซ้อนกันด้วยการเชื่อมต่อที่ใช้ร่วมกันตั้งค่าเพื่อเรียกใช้คำสั่งทั้งหมดเป็นธุรกรรมเดียว
แท็ก JSTL XML
<x: out>
- เช่น <%= ... > แต่สำหรับการแสดงออกของ XPath
<x: แยกวิเคราะห์>
- ใช้ในการแยกวิเคราะห์ข้อมูล XML ที่ระบุผ่านแอตทริบิวต์หรือในแท็กตัว
<x: ตั้งค่า>
- ตั้งค่าตัวแปรเป็นค่าของนิพจน์ XPath
<x: ถ้า>
- ประเมินการแสดงออกของการทดสอบ XPath และถ้าเป็นจริงก็จะประมวลผลร่างกาย หากเงื่อนไขการทดสอบเป็นเท็จร่างกายจะถูกละเว้น
<x: foreach>
- หากต้องการวนซ้ำโหนดในเอกสาร XML
<x: เลือก>
- แท็กแบบมีเงื่อนไขอย่างง่ายที่กำหนดบริบทสำหรับการดำเนินการตามเงื่อนไขพิเศษร่วมกันทำเครื่องหมายด้วยและแท็ก
<x: เมื่อไหร่>
- Subtag ของที่รวมถึงร่างกายของมันหากนิพจน์ของมันประเมินว่า 'จริง'
<x: มิฉะนั้น>
- Subtag ของที่ติดตามแท็กและรันเฉพาะในกรณีที่เงื่อนไขก่อนหน้าทั้งหมดประเมินเป็น 'เท็จ'
<x: แปลง>
- ใช้การแปลง XSL บนเอกสาร XML
<x: param>
- ใช้พร้อมกับแท็กการแปลงเพื่อตั้งค่าพารามิเตอร์ในรูปแบบ XSLT
แท็กฟังก์ชัน JSTL
<fn: มี ()>
- ทดสอบว่าสตริงอินพุตมีสตริงย่อยที่ระบุ
<fn: containsignorecase ()>
- การทดสอบหากสตริงอินพุตมีสตริงย่อยที่ระบุในวิธีที่ไม่รู้สึกตัว
<fn: endswith ()>
- การทดสอบหากสตริงอินพุตสิ้นสุดด้วยคำต่อท้ายที่ระบุ
<fn: escapexml ()>
- หลบหนีอักขระที่สามารถตีความได้ว่าเป็นมาร์กอัป XML
<fn: indexof ()>
- ส่งคืนดัชนีด้วยสตริงของการเกิดขึ้นครั้งแรกของสตริงย่อยที่ระบุ
<fn: เข้าร่วม ()>
- เข้าร่วมองค์ประกอบทั้งหมดของอาร์เรย์ลงในสตริง
<fn: ความยาว ()>
- ส่งคืนจำนวนรายการในคอลเลกชันหรือจำนวนอักขระในสตริง
<fn: แทนที่ ()>
- ส่งคืนสตริงที่เกิดจากการแทนที่ในสตริงอินพุตทั้งหมดที่เกิดขึ้นด้วยสตริงที่กำหนด
<fn: split ()>
- แยกสตริงออกเป็นอาร์เรย์ของย่อย
<fn: startswith ()>
- ทดสอบว่าสตริงอินพุตเริ่มต้นด้วยคำนำหน้าที่ระบุ
<fn: substring ()>
<fn: substringafter ()>
- ส่งคืนชุดย่อยของสตริงตามสตริงย่อยเฉพาะ
<fn: substringbefore ()>
- ส่งคืนชุดย่อยของสตริงก่อนที่จะทำการย่อย
<fn: ToLowerCase ()>
- แปลงอักขระทั้งหมดของสตริงเป็นตัวพิมพ์เล็ก
<fn: touppercase ()>
- แปลงอักขระทั้งหมดของสตริงเป็นตัวพิมพ์ใหญ่
<fn: trim ()>
- ลบช่องว่างสีขาวจากปลายทั้งสองของสตริง
สำหรับการสอบถามเพิ่มเติมติดต่อฉันผ่าน [email protected] หรือ whatsapp @ 9698382306
แสดงบางอย่างโดยนำแสดงโดยที่เก็บนี้ !!!
บทช่วยสอนที่สร้างและดูแลรักษาโดย
เชื่อมต่อกับฉัน:
ลิขสิทธิ์และใบอนุญาต
รหัสและเอกสารลิขสิทธิ์ 2021: Gowthamraj K