Perbezaan Antara EJB 2.1 dan EJB 3.0

 EJB 2.1 vs EJB 3.0

Peralihan utama dari EJB 2.1 kepada EJB 3.0 adalah berpusat pada prestasi dari segi kelajuan dan keluaran dan kesederhanaan. Pengubahsuaiannya akan memusatkan bagaimana program baru akan berfungsi dengan pengaturcara lain seperti Java EE5.

Dari aplikasi EJB 2.1 kepada Arkitek EJB 3.0 yang baru, ia boleh menjadi betul untuk menyatakan bahawa versi yang dipertingkatkan adalah sebagai jawapan kepada kekurangan yang terdahulu pada masa itu EJB 2.1.

Mari kita lihat beberapa peralihan utama.

Kesederhanaan

EJB 3.0 menawarkan kesederhanaan dalam manipulasi kandungan, yang mungkin salah satu faktor utama yang luar biasa. Tidak seperti EJB 2.1, kini anda boleh membuat aplikasi Enterprise Java Bean dengan banyak kesederhanaan.

Ini adalah kerana operasi EJB 3.0 didasarkan pada konfigurasi pengaturcaraan Java Plain Old (POJO) yang menangkap data dengan menggunakan anotasi Java yang terkandung oleh deskriptor penempatan. Dalam kebanyakan kes, deskriptor penyebaran tidak diperlukan.

Berbanding dengan EJB 2.1 yang memerlukan nota yang lebih rendah, sebaliknya adalah benar apabila menggunakan komponen EJB 3.0 yang memerlukan anda menulis dan menyimpan kod sokongan yang lebih sedikit dengan itu menawarkan pengalaman yang paling mudah dalam pengaturcaraan.

Keberkesanan

Adalah dinyatakan bahawa EJB 3.0 baru adalah kira-kira 45% lebih berkesan dibandingkan dengan EJB 2.1. Ini disebabkan oleh pengubahsuaian utama kepada EJB 2.1 seperti yang dijelaskan di bawah.

Penggantian DTD yang mengenal pasti deskriptor penyusun ejb-jar.xml oleh skema xml yang diubah suai dan juga cara yang lebih baik untuk menghasilkan kacang perusahaan telah menyebabkan EJB 2.1 tidak diingini berfungsi. Pengenalan Plain Java Object Old Plain keutamaan melalui API API yang berterusan.

Walaupun pengenalan kacang sesi telah mengubah penguat tambahan untuk perkhidmatan internet, EJB 3.0 telah memperkenalkan fungsi bulanan enteng kelas bulanan. Entiti-entiti ini adalah berdasarkan objek Java Old Plain dan tidak memerlukan kod EJB yang berjalan di dalamnya ataupun antara muka. Tambahan pula, mereka boleh bekerja di luar bekas EJB

Spesifikasi

Apabila EJB 2.1 menghendaki bahawa antara muka konstituen mengatasi struktur EJB, mereka kini ditulis sebagai Plain Java Old Objects apabila menggunakan EJB 3.0, yang memanifestasikan Plain Old Java Interface dan dengan itu tidak memerlukan antara muka rumah.

Pengenalan kaedah yang lebih baik seperti penggunaan anotasi metadata dan mekanisme lain yang digunakan untuk membuat kod Java dan deskriptor XML, tidak seperti deskriptor pengedaran EJB 2.1 yang rumit dan tidak tepat.

Aplikasi EJB 2.1 memerlukan kontena J2EE untuk menghalalkan perkhidmatan yang diperlukan untuk mengurus EJB dengan tepat dan dengan itu menjadikannya sukar untuk diuji. JNDI kerap bergantung kepada EJB 2.1 apabila menggunakan aplikasi adalah membosankan dan memakan masa.

EJB 3.0 tidak memerlukan peruntukan antara muka dan deskriptor tertentu. Ini kerana anotasi itu sebagai pengganti yang sesuai untuk deskriptor peruntukan. Anda boleh menggunakan nilai lalai lebih kerap apabila menggunakan aplikasi EJB 3.0 berbanding dengan EJB 2.1. EJB 3.0 menawarkan kurang inkonsisten diperiksa yang membolehkan kreativiti.

Ringkasan

EJB 3.0 dalam peralihan baru dari EJB 2.1.

Ia mudah untuk bekerja dengan EJB 3.0 berbanding dengan versi EJB 2.1.

EJB 3.0 menggunakan entiti yang kebanyakannya didasarkan pada Objek Java Old Plain (POJO).

EJB 2.1 memerlukan mencatatkan lebih banyak kod sokongan berbanding dengan EJB 3.0 yang mengurangkan bilangan kod sokongan.

DTD dalam EJB 2.1 digantikan oleh Skema XML diubah suai di EJB 3.0.

Kod Java mudah dijana oleh aplikasi yang lebih baik dalam EJB 3.0 tidak seperti di EJB3.1 di mana prosesnya menjadi lebih sukar.