6.1 Apa itu JavaBeans

Sudah di akhir tahun 90-an, bahasa Java mulai digunakan secara aktif untuk aplikasi server besar, di mana jumlah kelas diukur dalam puluhan dan ratusan ribu. Saat itulah ide untuk membakukan tampilan objek Java muncul.

Seluruh bahasa Jawa tidak disentuh, agar tidak menghilangkan fleksibilitasnya. Nah, kompatibilitas mundur dan semua itu. Kemudian mereka mengembangkan sejumlah kriteria untuk objek Java generasi baru dan menyebut objek tersebut Java Beans. Java dinamai berdasarkan merek kopi yang populer, jadi Java Beans secara harfiah diterjemahkan menjadi "biji kopi".

Kriteria yang paling penting adalah:

  • Akses ke bidang internal kelas melewati getProperty().
  • Menulis data ke bidang kelas melewati setProperty(value).
  • Kelas harus memiliki konstruktor tanpa parameter publik .
  • Kelas harus serializable.
  • Kelas harus memiliki equals(), hashCode()dan metode diganti toString().

Pendekatan ini membuat aplikasi kurang koheren. Selalu jelas:

  • cara membuat objek - ada konstruktor default publik;
  • cara mendapatkan/menetapkan nilai properti;
  • cara mentransfer/menyimpan objek (kami menggunakan serialisasi);
  • cara membandingkan objek (menggunakan equals() dan hashCode());
  • cara menampilkan informasi tentang objek di log (gunakan toString).

Sekarang sebenarnya standar industri, tapi dulunya tren baru. Sepertinya semua orang sudah menulis seperti ini, meskipun jika Anda ingat HttpClient dan Pembuatnya, Anda dapat melihat bahwa standar baru itu sulit bagi seseorang.

Objek semacam itu banyak digunakan di mana muatan semantik utamanya adalah penyimpanan data. Misalnya, di halaman GUI, database, dan JSP.

6.2 JSP dan JavaBeans

Salah satu alasan JSP adalah karena dapat dialihdayakan ke pengembang front-end. Dan apa? Anda memiliki orang yang mengerti HTML, biarkan dia menulis JSP. Pemrogram Java menulis bagian mereka, pengembang front-end menulis bagian mereka - semuanya baik-baik saja.

Dan semuanya baik-baik saja sampai pengembang front-end harus memahami kode Java tertulis yang disematkan di JSP. Atau, lebih buruk lagi, tulis kode seperti itu sendiri.

Pemrogram Java juga tidak senang dengan ini. Nah, berdoalah, desainer tata letak mana yang merupakan pengembang backend? Ya, mereka tidak bisa menulis apapun kecuali skrip. Ya, dan seluruh paradigma pemrograman mengatakan bahwa menggabungkan berbagai bahasa dalam satu file adalah bentuk yang buruk.

Kemudian muncul ide yang mereka katakan untuk memberikan kesempatan kepada pengembang front-end untuk bekerja dengan objek Java, seperti dengan kode HTML. Setiap tag HTML juga merupakan objek dengan bidangnya sendiri, mengapa tidak bekerja dengan objek Java dengan cara yang sama?

Tidak lama kemudian diucapkan daripada dilakukan. Menambahkan tag khusus dan kita pergi.

Pembuatan objek:

<jsp:useBean id="Name" class="Object type" scope="session"/>

Perintah ini membuat objek dengan tipe objectdan meletakkannya di sessionbawah nama Name.

Objek dapat disimpan di salah satu dari empat penyimpanan: aplikasi (global), sesi, permintaan, dan halaman. Dimungkinkan juga untuk mengatur properti dari objek tersebut:

<jsp:setProperty name="Name" property="propName" value="string constant"/>

Anda bisa mendapatkan properti dari objek seperti ini:

<jsp:getProperty name="Name" property="propName"/>

Contoh penggunaan tag:

<body>
    <center>
        <h2>Using JavaBeans in JSP</h2>
        <jsp:useBean id = "test" class = "com.example.TestBean" />
        <jsp:setProperty name = "test" property = "message" value = "Hello JSP..." />
        <p> What-to do important</p>
        <jsp:getProperty name = "test" property = "message" />
    </center>
   </body>