Pada artikel ini, saya akan memperkenalkan Anda pada teknologi berbasis JSP yang fleksibel dan menarik, yaitu JSTL. JSTL adalah singkatan dari Java Server Pages Standard Tag Library. Meskipun JSP telah menjadi sangat populer, JSTL masih sangat populer dalam aplikasi berbasis database SQL Pengembangan front-end dan back-end yang sederhana dan cepat masih belum banyak digunakan. Setelah Anda memahami JSTL, Anda akan memahami kelebihannya dan menemukan bahwa JSTL telah digunakan dalam banyak aspek dalam pekerjaan Anda sehari-hari sebagai seorang programmer. Saya berasumsi di sini bahwa Anda sudah familiar dengan HTML, dapat memahami pernyataan dasar SQL, dan dasar-dasar JSP. Karena konten berikut melibatkan pengetahuan ini.
JSTL adalah kumpulan pustaka tag standar yang mendukung iterasi, kondisi, penguraian dokumen XML, internasionalisasi, dan kemampuan untuk berinteraksi dengan database menggunakan SQL. Awalnya, spesifikasi JSTL telah dikembangkan dan ditingkatkan oleh JSR #52 yang diselenggarakan oleh JCP (program proses Komunitas Java). "JCP memikul tugas penting pengembangan teknologi Java" - komentar situs web resmi. Sebagai organisasi terbuka, JCP menyerap anggota formal dan informal. JCP telah memainkan peran penting dalam pembentukan dan pengembangan spesifikasi teknis Java. JSTL terutama mencakup empat bagian dasar perpustakaan tag: Inti, XML, internasionalisasi, dan dukungan untuk SQL. Karena tujuan utama artikel ini adalah untuk memahami JSTL dengan cepat melalui penerapan bagian SQL, artikel ini hanya memperkenalkan beberapa fungsi dasar pustaka tag Core dan SQL.
Teknologi ini sederhana dan cukup kuat untuk bersaing dengan PHP dan ColdFusion. Teknologi ini memiliki kemampuan yang cukup untuk memperluas bidang aplikasi Java. Bidang ini tidak hanya mencakup aplikasi Web berskala besar dan dapat diskalakan, tetapi juga aplikasi dengan beranda sederhana masalah. Hal ini memungkinkan Anda menghindari pertimbangan umum tentang integrasi XML dan koneksi database saat membangun situs Anda. Seperti yang baru saja saya sebutkan, poin kunci dari JSTL adalah kesederhanaan dan kemudahan penggunaan. Artinya, JSTL dibangun di atas JSP, yang memungkinkan kita menggunakan semua teknologi Java, yang perlu kita ingat.
Sebelum kita mulai, kita perlu mengetahui cara menjalankan JSTL. Karena berbasis pada teknologi JSP, kita memerlukan container yang dapat mengkompilasi JSP untuk menjalankannya. Di sini kita menggunakan container JSP gratis: TOMCAT ( http://jakarta. apache.org/Tomcat/index.html ). Cara menginstal produk ini berada di luar cakupan artikel ini. Tidak ada keraguan bahwa produk perangkat lunak ini sekarang sangat populer, dan terdapat banyak dokumentasi tentang cara menginstalnya. Diasumsikan di sini bahwa Anda telah menginstal dan berhasil mengkonfigurasi container ini. Anda hanya perlu menginstal file yang diperlukan untuk menjalankan JSTL. File tersebut dapat diunduh dari http://jakarta.apache.org/taglibs/doc/standard-doc/intro .html, Anda tidak perlu menginstalnya, Anda hanya perlu memasukkan file .JAR ke dalam direktori WEB-INF/lib aplikasi
Anda a Untuk menjalankan program pada database yang mendukung SQL standar, Anda perlu menginstal database di komputer Anda. Ada banyak jenis database, disini saya memilih MySql. Alasan mengapa saya memilihnya adalah pertama-tama, kita perlu menunjukkan peran JSTL dalam membangun bidang aplikasi yang sederhana dan cepat, dan pada saat yang sama, dapat dibandingkan dengan PHP+MySql, yang selalu dominan dalam hal ini. bidang; poin kedua adalah MySql gratis untuk diunduh dan menyertakan driver JDBC untuk JAVA. Singkatnya, untuk menggunakan contoh berikut, Anda perlu mengunduh server MYSQL ( http://www.mysql.com/products/ mysql/index.html ; Konektor MySql / driver J JDBC http://www.mysql.com/products/connector-j/index.html ; dan pusat kendali MySql http://www.mysql.com/products/connector- j/index.html ), produk ini memungkinkan Anda mengoperasikan dan mengelola file database Mysql dengan sangat mudah. Setelah semua unduhan selesai, Anda perlu menginstal mysql dan mysql Control Center. Selain itu, driver JDBC untuk mysql perlu ditempatkan di direktori /Web-INF/lib di aplikasi web Anda.
Sebelum membuat kode program, Anda perlu membuat dan mengisi tabel database. Ada banyak artikel tentang topik ini, dan cara melakukannya berada di luar cakupan artikel ini. Di sini saya merekomendasikan kepada Anda Pusat Kontrol MySQL, alat manajemen visual yang kami sebutkan di atas. Anda dapat menggunakannya untuk membuat pengguna uji untuk menjalankan program, database dan membuat tabel pengujian dan mengisi sejumlah catatan. Mengenai parameter lingkungan konfigurasi seperti nama login dan nama database kata sandi, Anda harus mengingatnya dan perlu menerapkannya ke kode kita nanti.
Sekarang, Anda siap untuk membuat aplikasi JSTL pertama Anda. Hal ini mengharuskan kita melakukan hal-hal berikut:
Seluruh contoh kode program mencakup dua file, Hello.jsp dan Continue.jsp.
File Hello.jsp memungkinkan Anda memasukkan nama database , Nama login, kata sandi login, nama tabel database. Lanjutkan.jsp: Menerima informasi data di Hello.jsp dan menghubungkan ke database, dan melakukan permintaan Pilih ke tabel di database.
Di bawah ini adalah semua file kode sistem ini, saya akan menjelaskannya satu per satu. Kode-kode ini cukup sederhana. Adapun struktur kodenya, saya yakin Anda dapat memahaminya bahkan tanpa penjelasan
saya
2: <html>
3: <kepala>
4: <judul>Halo</judul>
5: </kepala>
6: <tubuh bgcolor="#ffffff">
7: <h1>Silakan masukkan semua informasi yang diperlukan dan klik OK.</h1>
8: <metode formulir="post" action="Lanjutkan.jsp">
9: <br>Login Anda ke database:
<input type="teks" nama="login" size="15">
10: <br>Kata sandi Anda ke database:
<input type="kata sandi" nama="kata sandi" size="15">
11: <br>Nama database Anda:
<input type="teks" nama="database" size="15">
12: <br>Tabel database Anda:
<input type="text" nama="tabel" size="15">
13: <br><br><input type="kirim" nama="kirim" value=" OK ">
14: </bentuk>
15: </badan>
16: </html>
(Harap dicatat bahwa angka di sisi kiri teks hanya untuk memberi Anda beberapa informasi markup. Anda tidak perlu memasukkannya ke dalam file kode Anda.)
Di atas adalah kode sumber semuanya Halo.jsp. Anehnya, ini hanya kode HTML murni, sesederhana itu, menurut saya tidak perlu komentar. Alasan mengapa saya menyertakan cuplikan kode ini dalam artikel adalah untuk menunjukkan integrasi JSTL ke dalam situs HTML yang membutuhkannya untuk memperluas fungsi tambahan dengan cepat. Betapa sederhananya. Izinkan saya menunjukkan keseluruhan kode Continue.jsp. Setelah membacanya, Anda akan memiliki pemahaman tentang JSTL.
1: <!-- Lanjutkan.jsp -->
2: <%@ taglib prefix="c" uri=" http://java.sun.com/jstl/core " %>
3: <@ taglib prefix="sql" uri=" http://java.sun.com/jstl/sql " %>
4: <c:set var="h" value="localhost"/>
5: <c:set var="l" value="${param.login}"/>
6: <c:set var="p" value="${param.password}"/>
7: <c:set var="d" value="${param.database}"/>
8: <c:set var="t" value="${param.table}"/>
9: <html>
10: <kepala>
11: <judul>Lanjutkan</judul>
12: </kepala>
13: <tubuh bgcolor="#ffffff">
14: <sql:setDataSource driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://${l}/${d}?pengguna=${u}&kata sandi=${p}"/>
15: <sql:query var="hasil">
16: PILIH * DARI <c:out value="${t}"/>
17: </sql:kueri>
18: <c:forEach var="row" items="${result.rowsByIndex}">
19: <c:out value="${baris[0]}"/> <br>
20: </c:forEach>
21: </badan>
22: </html>
(Harap dicatat bahwa angka di sebelah kiri teks hanya untuk memberi Anda beberapa informasi markup, Anda tidak perlu memasukkannya ke dalam file kode Anda.)
Ini semua adalah kode kita, bukan itu bagus? Sekarang mari kita jelaskan fungsi kode-kode di atas.
Baris 1 adalah deskripsi komentar HTML.
Baris 2--3 Tag JSP ini digunakan untuk mereferensikan pustaka tag eksternal. Agar lebih tepat, tag tersebut mengacu pada bagian pustaka tag Core dan SQL dari pustaka JSTL. Kami menetapkan nama awalan untuk mereka sehingga kami dapat mengakses metode fungsi di perpustakaan tag yang diperkenalkan melalui nama awalan ini.
Baris 4---8 Sama seperti Hello.jsp yang sebenarnya sedang berjalan, ia akan meminta continue.jsp. Setelah Continue.jsp menerima permintaan tersebut, ia perlu mendapatkan dan mengurai beberapa variabel dari Hello.jsp. Kami menggunakan metode ini ${param .VAR_ANDA}. Pada baris ke-4 tag <c:set, atur variabel ${h} menjadi "localhost". Variabel baris kelima ${l} akan mendapatkan informasi yang kita masukkan pada kolom teks login di Hello.jsp, 6th dan 7th . variabel pada 8 baris tersebut masing-masing akan memperoleh password, nama database, dan nama tabel data yang dimasukkan oleh pengguna di Hello.jsp.
Baris 9-13 adalah beberapa tag HTML sederhana yang sering saya gunakan untuk membuat header halaman HTML. Sekarang, fungsi penting telah hadir.
Baris 14, kami mencoba membuat koneksi database menggunakan driver mysql (com.mysql.jdbc.Driver) yang kami peroleh sebelumnya. Di URL, kami menentukan parameter yang diperlukan untuk koneksi database, seperti nama database, nama host, login nama dan kata sandi masuk. Oleh karena itu, kita dapat menggunakan driver JDBC lainnya untuk terhubung ke database yang sesuai. Jika kita perlu terhubung ke database SQL lain, ubah saja URL ini.
Baris 15--17 Di sini kita menjalankan query Select. Harap beri perhatian khusus pada baris 16. Kita menggunakan fungsi JSTL lain <c:out untuk menampilkan nama tabel data yang kita peroleh. Di sini kita juga dapat menggunakan perintah SQL lainnya, seperti INSERT , HAPUS, dll. Untuk menjalankan permintaan kueri ini tanpa nilai kembalian, Anda perlu menggunakan fungsi <sql:update JSTL. Dia dapat mengeksekusinya secara langsung seperti <SQL:query, kecuali saat mengeksekusinya, tidak perlu menentukan variabel hasil untuk menyimpan hasil yang dikembalikan oleh eksekusi pernyataan.
Baris 18--20 Sekarang kita telah mengeksekusi pernyataan query SELECT di atas, kita harus menampilkan hasil pengembaliannya. <c:forEach adalah fungsi dengan fungsi iterasi di JSTL. Saat menjalankannya, kami mengembalikan setiap informasi baris data yang dikembalikan ke variabel ${row} melalui ${result.rowsByIndex}, dan kemudian pada baris 19, kami Menggunakan <c: out value="${row[0]}"/> untuk menampilkan nilai di kolom data pertama dari setiap baris data yang dikembalikan. Selama tabel data Anda berisi kolom, Anda dapat mengakses nilai di kolom mana pun di tabel permintaan dengan mengubah nomor di variabel ${row}.
Baris 21-22 adalah footer HTML.
Dalam proses pembuatan aplikasi JSTL sendiri, Anda mungkin belum mengetahui betapa kuatnya itu, tetapi Anda harus dapat menyadari kesederhanaan dan efisiensi fungsi JSTL. Bayangkan saja memiliki JSTL, seberapa cepatnya adalah mengintegrasikan kolom berita berbasis SQL, dan betapa mudahnya mengintegrasikan situs web Anda yang sudah ada.
Bagus sekali, kode kita sangat mudah dipahami. Bahkan seorang programmer non-profesional, misalnya seorang desainer dapat membacanya, memahaminya, dan mungkin membuat beberapa modifikasi, setidaknya pada tata letak halaman.
Seperti yang telah kami sebutkan di awal, agar kode JSTL kita dapat berjalan dengan baik, kita perlu menginstal file JAR di Mysql Connector/J, dan tentu saja JSTL. Karena kami menggunakan Tomcat, wadah JSP, Anda perlu membuat folder sendiri di bawah direktori file Tomcat Webapps, dan menempatkan file Hello.jsp dan Continue.jsp di direktori file yang Anda buat. INF dan masukkan file konfigurasi Web.xml Anda ke dalamnya. File web.xml adalah sebagai berikut:
<?xml version="1.0" coding="UTF-8"?>
<!Aplikasi web DOCTYPE
PUBLIK "-//Sun Microsystems, Inc.//Aplikasi Web DTD 2.3//EN"
" http://java.sun.com/dtd/web-app_2_3.dtd ">
<web-app />
Selanjutnya kita perlu membuat subdirektori bernama lib di bawah WEB-INF dan memasukkan file berikut ke dalamnya:
jstl.jar
saxpath.jar
standar.jar
mysql-connector-java-3.0.9-stable-bin.jar (catatan, nama ini dapat berubah tergantung pada versi Mysql Connector/J Anda)
Semua informasi ini dapat Anda periksa di manual JSTL atau Tomcat, jika Anda ingin memahami secara pasti bagaimana dan mengapa cara kerjanya Anda harus membaca manual ini. Namun, untuk membantu Anda dengan cepat menguasai operasi dasar JSTL, saya telah memperkenalkan pengetahuan yang relevan.
Jika Anda menggunakan container Jsp lain, Anda perlu membaca manualnya yang relevan.
Sekian, saya ingin menjelaskan satu hal lagi. Artikel ini hanyalah pengenalan dasar tentang teknologi JSTL, bukan panduan lengkap. JSTL berisi banyak penggunaan fungsi yang kaya fitur untuk membantu Anda menyelesaikan pengembangan Jsp Anda dengan cara yang sederhana dan cepat. Saya sarankan Anda membaca beberapa dokumentasi lebih rinci tentang fungsi JSTL dan cara kerjanya dengan JavaBeans bahwa ini adalah platform pengembangan yang Anda tunggu-tunggu. Dengan membaca artikel ini, Anda seharusnya bisa membuat beberapa aplikasi front-end dan back-end sederhana berdasarkan database SQL.