JSTL adalah
singkatan dari Java Standard Tag Library. JSTL merupakan library untuk JSP yang
berisi tag-tag standard. JSTL merupakan halaman java yang berada dalam HTML
(Java in HTML). Tag pada JSTL :
<%..........%> atau
<%=………….%>
Pada MVC, JSP merupakan View, yang
mengurusi segala tampilan web, dilakukan dengan memisahkan antara tampilan kode
HTML dan kode Java. Pada JSTL tidak perlu ada pengulangan atau kondisi looping.
JSTL dapat
digunakan apabila dideklarasikan seperti dibawah ini pada bagian file JSP :
<%@ taglib prefix="c"
uri="http://java.sun.com/jsp/jstl/core" %>
Tujuan dari JSTL yaitu :
-
Mempermudah dalam perancangan halaman JSP
-
Memisahkan
halaman kode html dan kode Java pada JSP
Jenis-jenis Tag Pada JSTL :
1.
Core (http://java.sun.com/jsp/jstl/core, prefix
c)
Merupakan
bagian inti, terdapat pada bagian perulangan seperti : If, Else, dan Switch Case
ataupun iterasi dan kondisi. Tag core menyediakan fungsi yang sangat berguna
untuk setiap proyek web. Set core dapat dibagi menjadi sub kategori sebagai
berikut:
- General Purpose Tags
<c:set>
Tag ini dapat mengatur variabel di dalam scope
tertentu (untuk set value). Dan memiliki atribut:
1.
Value :
nilai yang akan diatur ke dalam terget bean.
2.
Var :
nama dari sebuah variabel yang akan di atur di dalam scope tertentu
3.
Scope:
menjelaskan variabel scope yang dijelaskan oleh atribut var.
<c:out>
Tag ini digunakan untuk menampilkan atau melakukan
pemanggilan hasil secara langsung kepada obyek yang sesuai dengan halaman output.
Dengan kata lain, tag ini akan menuliskan kata yang tertulis dalam atribut
value dan dalam bentuk non-XML tags.
<c:remove>
Tag ini digunakan untuk menghapus variabel yang telah dibuat. Tag ini
memiliki dua atribut :
-
Scope: scope variabel yang akan di hapus
-
Var: nama variabel yang akan di hapus dari scope
tertentu
Contoh :
- Iteration
Merupakan tag untuk perulangan
yang terdiri dari : <forEach> dan <forTokens>
<c:forEach>
Tag yang digunakan pada perulangan untuk variabel
dan pemanggilan output yang berupa integer. Contoh :
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"
%>
<html>
<head>
<title><c:forEach> Tag Example</title>
</head> <body>
<c:forEach var="i" begin="1"
end="5">Item<c:out value="${i}"/><p>
</c:forEach>
</body>
</html>
<c:forTokens>
Tag ini digunakan dengan memasukkan langsung calue
yang ingin ditampilkan. Terdapat delims (pemisah) karakter string. Contoh :
<%@ taglib uri="http://java.sun.com/jsp/jstl/core"
prefix="c" %>
<html>
<head>
<title><c:forTokens> Tag Example</title>
</head>
<body>
<c:forTokens items="Zara,nuha,roshy"
delims="," var="name">
<c:out value="${name}"/><p>
</c:forTokens>
</body>
</html>
- Conditionals
Tag yang fungsinya sama dengan standar if, else-if, yang ditemukan dalam
standar Java. Terdapat dua set kondisional :
-
Tag <c:if> dan
-
Tag <c:choose> yang berelasi dengan tag
<c:when> serta <c:otherwise>
<c:if>
Dieksekusi apabila pernyataan didalam body bernilai
True.
<c:choose>, <c:when>, dan
<c:otherwise>
Meemiliki cara kerja yang sama dengan kondisi
pemilihan Switch Case.
2.
XML processing
(http://java.sun.com/jsp/jstl/xml, prefix x)
Memiliki
kaitan dengan dokumen XML
3.
SQL (http://java.sun.com/jsp/jstl/sql,
prefix sql)
Memiliki
kaitan dengan database prefix, yang mana tag ini adalah default(settingan)
aslinya dan tidak dapat diubah. Dan bertugas dalam pengolahan data pada
database
4.
Functions (http://java.sun.com/jsp/jstl/functions,
prefix fn)
Biasanya
digunakan untuk manipulasi String.
5.
Formatting
(http://java.sun.com/jsp/jstl/fmt)
Digunakan untuk internasionalisasi
sehingga web yang dihasilkan dapat diakses dengan versi banyak bahasa
Tahap-Tahap Pembuatan JSP
Dengan JSTL :
1.
Tambahkan library (file .jar) ke dalam
package libraries. Dan bila tidak tersedia pada
library, maka kunjungi website Oracle dan download filenya.
2.
Tambahkan file JSP
3.
Tambahkan tag-tag JSTL. Terutama tag :
<%@ taglib prefix="c"
uri="http://java.sun.com/jsp/jstl/core" %>
Dan letakkan sebelum <html>. Kemudian
tulis kode
java setelah <body> dan sebelum </body>
Contoh
Kode Program pada JSTL :
Untuk
melakukan looping, kita bisa menggunakan tag foreach
dalam paket core.
Dan untuk memformat tanggal dan angka, kita menggunakan tag formatDate dan formatNumber dalam paket fmt
Contoh kode program :
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"
%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"
%>
<table>
<tr>
<th>No</th>
<th>NPM</th>
<th>Nama</th>
<th>Tanggal
Masuk</th>
<th>IPK</th>
</tr>
<c:forEach var="mhs"
items="${daftarMahasiswa}" varStatus="counter">
<tr>
<td><c:out
value="${counter}" /></td>
<td><c:out
value="${mhs.npm}" /></td>
<td><c:out
value="${mhs.nama}" /></td>
<td><fmt:formatDate
value="${mhs.tanggalMasuk}" pattern="dd-MMM-yyyy"/></td>
<td><fmt:formatNumber
value="${mhs.ipk}" type="number" maxIntegerDigits="1"
maxFractionDigits="2"/></td>
</tr>
</c:forEach>
</table>
Perbedaan JSTL dan Tag Bean Biasa :
Dengan Java Biasa:
Pada JSTL, tag yang digunakan lebih sedikit dibanding dengan java
biasa. Pada JSTL hanya terdapat 1 baris tag pemrosesan looping, sedangkan pada
java biasa terdapat 2 baris tag pemrosesan looping.
Jadi menggunakan JSTL lebih menghemat (memperpendek) penulisan koding, dibanding dengan java biasa.
0 komentar:
Posting Komentar