Jsp memanggil perintah Javeabean. Ada pengaturan Lingkup di UseBean, dan umumnya ada pengaturan seperti halaman sesi Aplikasi. Halaman adalah
objek javabean baru di usebean yang dibuat ulang untuk setiap halaman , Anda dapat menggunakannya.
Sesi
dan aplikasi berarti javabean akan selalu ada. Dibandingkan dengan sesi, aplikasi bersifat relatif terhadap aplikasi.
Secara umum, pengguna memiliki sesi, dan akan hilang ketika pengguna keluar sementara aplikasi akan selalu ada ., mirip dengan
program servlet, mirip dengan "variabel global" dari keseluruhan sistem, dan hanya ada satu contoh.
Fungsi kontrol di MVC
Oleh karena itu, fitur aplikasi sangat cocok untuk fungsi kontrol di MVC. Umumnya, MVC tradisional menggunakan servlet untuk fungsi kontrol. V
pada dasarnya
adalah halaman Jsp, dan M adalah Javabean middleware.Namun, dengan peningkatan dan promosi fungsi Jsp, ada kecenderungan bertahap untuk menggantikan servlet. Dalam praktiknya, kami lebih banyak menggunakan Jsp. Terkadang
untuk
menghindari masalah, Jsp digunakan sebagai pengganti servlet, terutama fungsi kontrolnya.Faktanya, fungsi kontrol ini dienkapsulasi dalam Javabean. Jsp menggunakan scope=application untuk memanggil Javabean ini
, Javabean dengan fungsi kontrol seperti servlet yang ada di memori dan berinteraksi dengan berbagai middleware latar belakang.
Tampilan "halaman beranda"
dalam aplikasi praktis. Kita sering memiliki banyak pengguna yang mengakses suatu halaman secara bersamaan, seperti halaman beranda. Ada banyak fungsi yang dijalankan di halaman beranda ini, seperti
klasifikasi direktori harus membaca data pohon dari database dan Memperluas dan menampilkannya ke beranda.
Kemudian ketika Jsp beranda memanggil Javabean ini, gunakan scope=application, lalu gunakan algoritma buffering data pohon. Dengan cara ini, ketika banyak
pengguna
mengakses beranda secara bersamaan, JSP beranda tidak perlu memulai Javabean setiap saat. dan kemudian membaca database berulang kali.Tidak diragukan lagi ini akan meningkatkan kecepatan secara signifikan.
Jadi jika Jsp beranda Anda memiliki jumlah kunjungan yang tinggi, Anda harus meluangkan lebih banyak waktu untuk mengoptimalkannya.
Buffer koneksi database
< jsp:useBean id="cods"
kelas = "Oracle.jdbc.pool.OracleConnectionCacheImpl"
scope="aplikasi" />
< acara:application_OnStart>
<%
cods.setURL("jdbc:Oracle:thin:@HOST:PORT:SID");
cods.setUser("scott");
cods.setPassword("harimau");
cods.setStmtCache (5);
%>
< /event:application_OnStart>
< %@ halaman import="java.sql.*, javax.sql.*, Oracle.jdbc.pool.*" %>
< !------------------------------------------------ ----------------
* Ini adalah Halaman JavaServer yang menggunakan Connection Caching
aplikasi
* cakupan. Cache dibuat dalam lingkup aplikasi di
file globals.jsa.
* Koneksi diperoleh dari Cache dan didaur ulang kembali satu kali
Selesai
.------------------------------------------------ --------------------!>
<HTML>
<KEPALA>
<JUDUL>
Sambungkan Cache JSP
< /JUDUL>
< /KEPALA>
<BODY BGCOLOR=EOFFFO>
<H1>Halo
< %= (permintaan.getRemoteUser() != null? ", " +
permintaan.getRemoteUser() : "") %>
! Saya Koneksi Caching JSP.
< /H1>
<SDM>
< B> Saya mendapatkan Koneksi dari Cache dan mendaur ulangnya kembali.
< /B>
<P>
<%
mencoba {
Sambungan koneksi = cods.getConnection();
Pernyataan stmt = samb.createStatement();
ResultSet rset = stmt.executeQuery ("PILIH ename, sal " +
"DARI scott.emp DIPESAN OLEH ename");
if (rset.berikutnya()) {
%>
< BATAS TABEL=1 BGCOLOR="C0C0C0">
< TH WIDTH=200 BGCOLOR="putih"> < I>Nama Karyawan< /I> </ /TH>
< TH WIDTH=100 BGCOLOR="putih"> < I>Gaji</I> </ /TH>
< TR> < TD ALIGN=PUSAT> < %= rset.getString(1) %> < /TD>
< TD ALIGN=PUSAT> $< %= rset.getDouble(2) %> < /TD>
< /TR>
< % sementara (rset.next()) {
%>
< TR> < TD ALIGN=PUSAT> < %= rset.getString(1) %> < /TD>
< TD ALIGN=PUSAT> $< %= rset.getDouble(2) %> < /TD>
< /TR>
< % }
%>
< /TABEL>
< % }
kalau tidak {
%>
< P> Maaf, kueri tidak menghasilkan baris! < /P>
<%
}
rset.close();
stmt.tutup();
conn.close(); // Kembalikan Koneksi ke Pool
} tangkapan (SQLException e) {
out.println("< P>" + "Terjadi kesalahan saat melakukan query:");
keluar.println("< PRE>" + e + "< /PRE>
< P>");
}
%>
< /TUBUH>
< /HTML>
Gunakan aplikasi untuk menyimpan cache koneksi database. Setiap kali digunakan, aplikasi tersebut dikeluarkan dari buffer dan dikembalikan setelah digunakan.