Senin, 21 September 2026
03:35 WIB
TERKINI
Cek Fakta Kiat Cerdas Deteksi Hoaks: Hindari Jebakan Berita Palsu di Media Sosial Cek Fakta Waspada! Penipuan Undian Berhadiah Catut Nama BNI Kembali Marak Climate BMKG Ungkap Potensi Hujan Lebat Landa Sejumlah Wilayah Indonesia Pekan Ini Moto Gp Veda Ega Peringkat 16 FP2 Moto3 Austria, Hakim Danish Tembus Empat Besar Moto Gp Drama Kualifikasi Moto3 Austria: Veda Ega ke-19, Uriarte Pecahkan Rekor Hukum Selebgram JP Terjerat Vape Narkoba: Stres Picu Konsumsi Etomidate Golongan II Arsip Mengenang Multatuli: Kisah 84 Hari yang Mengukir Sejarah Lebak Arsip Max Havelaar di Sekolah Belanda: Antara Pedoman dan Kebebasan Memilih Megapolitan Aroma Tak Sedap Ganggu Pejalan Kaki Dekat Halte IRTI Monas Tren Trump Larang CNN, MS NOW, Politico dari Gedung Putih: Konflik Media Memuncak Cek Fakta Kiat Cerdas Deteksi Hoaks: Hindari Jebakan Berita Palsu di Media Sosial Cek Fakta Waspada! Penipuan Undian Berhadiah Catut Nama BNI Kembali Marak Climate BMKG Ungkap Potensi Hujan Lebat Landa Sejumlah Wilayah Indonesia Pekan Ini Moto Gp Veda Ega Peringkat 16 FP2 Moto3 Austria, Hakim Danish Tembus Empat Besar Moto Gp Drama Kualifikasi Moto3 Austria: Veda Ega ke-19, Uriarte Pecahkan Rekor Hukum Selebgram JP Terjerat Vape Narkoba: Stres Picu Konsumsi Etomidate Golongan II Arsip Mengenang Multatuli: Kisah 84 Hari yang Mengukir Sejarah Lebak Arsip Max Havelaar di Sekolah Belanda: Antara Pedoman dan Kebebasan Memilih Megapolitan Aroma Tak Sedap Ganggu Pejalan Kaki Dekat Halte IRTI Monas Tren Trump Larang CNN, MS NOW, Politico dari Gedung Putih: Konflik Media Memuncak
Jakarta Enterprise Beans

Jakarta Enterprise Beans

Artikel ini perlu dirapikan agar memenuhi standar Wikipedia. Silakan kembangkan artikel ini semampu Anda. Merapikan artikel dapat dilakukan dengan wikifikasi atau membagi artikel ke paragraf-paragraf. Jika sudah dirapikan, silakan hapus templat ini. (Pelajari cara dan kapan saatnya untuk menghapus pesan templat ini)
250px-Java_EE_Enterprise_Java_Bean.JPG?utm_source=id.wikipedia.org&utm_campaign=parser&utm_content=thumbnail
Jakarta Enterprise Beans, sebelumnya dikenal sebagai Enterprise JavaBeans yaitu API Java untuk membangun komponen perangkat lunak perusahaan yang berjalan di sisi peladen dan menangani logika bisnis. Ini adalah gambar Enterprise Java Bean

Jakarta Enterprise Beans (EJB; sebelumnya Enterprise JavaBeans) adalah salah satu dari beberapa API Java untuk konstruksi modular perangkat lunak perusahaan. EJB adalah komponen perangkat lunak sisi peladen yang merangkum logika bisnis suatu aplikasi. Sebuah kontainer web EJB menyediakan lingkungan waktu proses untuk komponen perangkat lunak terkait web, termasuk keamanan komputer, manajemen siklus hidup java servlet, pemrosesan transaksi, dan layanan web lainnya. Spesifikasi EJB adalah bagian dari spesifikasi Java EE.[1]

Spesifikasi

Spesifikasi EJB awalnya dikembangkan pada tahun 1997 oleh IBM dan kemudian diadopsi oleh Sun Microsystems (EJB 1.0 dan 1.1) pada 1999[2] dan ditingkatkan di bawah Proses Komunitas Java sebagai JSR 19 (EJB 2.0), JSR 153 (EJB 2.1), JSR 220 (EJB 3.0), JSR 318 (EJB 3.1) dan JSR 345 (EJB 3.2).

Spesifikasi EJB menyediakan cara standar untuk mengimplementasikan perangkat lunak 'bisnis' sisi peladen (juga disebut "back-end") yang biasanya ditemukan dalam aplikasi perusahaan (berlawanan dari perangkat lunak antarmuka pengguna 'front-end'). Perangkat lunak ini mengatasi jenis masalah yang sama, dan solusi dari masalah ini sering kali diimplementasikan berulang kali oleh pemrogram. Jakarta Enterprise Beans dimaksudkan untuk menangani masalah umum seperti persistensi, integritas transaksional, dan keamanan dengan cara standar, membiarkan pemrogram untuk bebas berkonsentrasi pada bagian-bagian tertentu dari perangkat lunak perusahaan yang ada.

Sifat

  • Scalable

EJB dirancang untuk bisa scalable, yaitu untuk bisa menangani jumlah concurent user yang membesar. Scalability bisa dicapai dengan vertical scalability yaitu dengan menambahkan memory maupun processor dari sebuah mesin, atau dengan membuat cluster di mana EJB di- deploy di beberapa mesin

  • Transactional

EJB dirancang untuk mendukung transaction, di mana satu rentetan perubahan data diperlakukan sebagai satu kesatuan. Sebagai contoh, dalam aplikasi e-banking, di mana user melakukan transfer uang dari satu account ke account lain. Dalam operasi ini terdapat dua buah perubahan data setidaknya yaitu pengurangan jumlah uang dari account pengirim, dan penambahan jumlah uang ke account penerima. Dua buah perubahan data ini dipandang sebagai satu kesatuan. Jika salah satu gagal, maka keduanya dibatalkan.

  • Secure

EJB juga bisa dirancang untuk secure, dengan menerapkan Role-Based Access Control di mana user-user dengan role tertentu saja yang bisa mengakses komponen-komponen EJB tertentu

  • Transparancy

EJB juga mendukung location transparancy, di mana EJB bisa di-deploy di enterprise application server yang lokasinya bisa di mana saja. Client dari EJB akan menemukan EJB ini dengan melakukan lookup ke directory server.

Untuk mengembangkan EJB, langkah pertama menuliskan source code, kemudian melakukan compilasi (compile), selanjutnya menuliskan deployment descriptor, dan langkah terakhir mendeploy ke application server.

Perlu ditekankan, EJB berbeda dengan Swing maupun JSP yang menyediakan user interface, namun EJB bekerja di back-end. EJB menyediakan service yang dipanggil oleh client. Client dari EJB bisa berupa stand alone application dengan Swing, ataupun web-based application dengan JSP.

Tipe Utama EJB

Tipe Pertama SessionBean

Session Bean digunakan untuk mereprsentasikan proses, kendali dan alur kerja. Contohnya, session bean digunakan untuk melakukan validasi credit card, mencariketersediaan jadwal penerbangan, dan menyimpan shopping cart. Session Bean bisa Stateless atau Stateful. SessionBean tidak disimpan di dalam database, dan tidak akan survive jika server mengalami crash. Session bean hanya diakses oleh satu client, dan transactional.

Tipe Kedua EntityBean

Entity Bean digunakan untuk merepresentasikan business objek. Contohnya, entity bean digunakan untuk merepresentasikan Product, Order, Student, Course, Employee, dan To Do. Entity Bean tersimpan di database, jika server mengalami crash dia akan survive. Terdapat dua strategi penyimpanan yaitu Bean Managed Persistence dan Container Managed Persistence. Entity Bean adalah di-share oleh banyak client dan transactional.

Tipe Ketiga MessageDrivenBean

MessageDriven Bean digunakan untuk menyediakan layanan asynchronous messaging. Source Code dan Deployment Descriptor Untuk mengembangkan sebuah Enterprise Java Bean, dan wajib menuliskan source code untuk Home interface, Remote interface, dan bean implementation

Home interface

Ditulis dengan meng-extends EJBHome. Di home interface, Anda mendeklarasikan method untuk meng-create EJB object. Home interface akan diimplementasikan oleh enterprise application server, dan dikenal sebagai EJB home.

Remote interface

Ditulis dengan meng-extends EJBObject. Di remote interface, Anda mendeklarasikan method-method yang disediakan untuk melayani client. Di Session Bean, method-method ini bisa berupa business method. Di Entity Bean, method-method ini bisa berupa setter dan getter method. Remote interface juga akan diimplementasikan oleh enterprise application server. Dalam implementasinya, yang dikenal sebagai EJB object, masing-masing method akan menginvoke method yang bersesuaian di bean implementation. EJB object menyediakan service-service tambahan seperti security, dan transaction.

Bean implementation

Adalah Java class di mana Anda mengimplementasikan method yang telah Anda deklarasikan di Remote interface, sebagaimana juga di Home interface.

Cara Kerja

EJB dijalankan dalam kontainer EJB, biasanya dalam server aplikasi. Spesifikasi menjelaskan bagaimana EJB berinteraksi dengan kontainernya dan bagaimana kode klien berinteraksi dengan kombinasi kontainer/EJB. Kelas EJB digunakan oleh aplikasi termasuk dalam package javax.ejb. (Package javax.ejb.spi adalah sebuah antarmuka penyedia layanan hanya digunakan oleh implementasi kontainer EJB.).

Klien EJB tidak membuat instance bean tersebut secara langsung melalui operator baru Java, tetapi melainkan harus memperoleh referensi melalui container EJB. Referensi ini biasanya bukan referensi ke implementasi bean itu sendiri, tapi ke sebuah proksi, yang secara dinamis mengimplementasikan antarmuka bisnis lokal atau jarak jauh yang diminta klien atau sub-tipe dari bean sebenarnya. Proksi kemudian dapat langsung diberikan ke antarmuka atau kacang masing-masing. Sebuah klien dikatakan memiliki 'tampilan' pada EJB, dan antarmuka lokal, antarmuka jarak jauh dan subtipe kacang itu sendiri masing-masing sesuai dengan tampilan lokal, tampilan jarak jauh dan tampilan tanpa antarmuka.

Proksi ini diperlukan untuk memberikan kontainer EJB kesempatan untuk secara transparan menyediakan layanan lintas sektoral (seperti AOP) untuk ke sebuah bean seperti transaksi, keamanan, intersepsi, injeksi, dan jarak jauh. Sebagai contoh, klien memanggil metode pada proksi, yang pertama-tama akan memulai transaksi dengan bantuan kontainer EJB dan kemudian memanggil metode kacang yang sebenarnya. Saat metode bean kembali, proxy mengakhiri transaksi (yaitu dengan melakukan atau melakukan pembalikan) dan mentransfer kendali kembali ke klien.

Kontainer EJB bertanggung jawab untuk memastikan kode klien memiliki hak akses yang memadai ke EJB.[3] Aspek keamanan dapat diterapkan secara deklaratif pada EJB melalui anotasi.[4]

Referensi

  1. "Enterprise JavaBeans Technology". www.oracle.com. Diakses tanggal 2016-12-15.
  2. J2EE Design and Development, © 2002 Wrox Press Ltd., p. 5.
  3. JSR 318, Chapter 17, http://jcp.org/en/jsr/detail?id=318
  4. "Security Annotations". Openejb.apache.org. Diakses tanggal 2012-06-17.

Pranala luar

Konten disalin dari Wikipedia Bahasa Indonesia (lisensi CC BY-SA) Lihat versi asli di Wikipedia

Rekomendasi Pilihan