Saya telah melakukan Java SE selama beberapa tahun sekarang dan pindah ke Java EE. Namun, saya mengalami kesulitan memahami beberapa aspek Java EE.
Apakah Java EE hanya spesifikasi? Apa yang saya maksud adalah: Apakah EJB Java EE?
Apakah EJB / Spring implementasi yang berbeda dari Java EE?
Saya minta maaf untuk bertanya tetapi saya memiliki beberapa kesulitan untuk memahami apa itu Java EE.
Bisakah seseorang menjelaskan apa itu Java EE? Dan EJB?
java
jakarta-ee
ejb
Frank Zimmer
sumber
sumber
Jawaban:
Java EE memang spesifikasi abstrak . Siapa pun terbuka untuk mengembangkan dan menyediakan implementasi spesifikasi kerja. The beton implementasi yang disebut server aplikasi, seperti WildFly , TomEE , GlassFish , Liberty , WebLogic , dll Ada juga wadah servlet yang mengimplementasikan hanya JSP / Servlet bagian dari API Java EE besar, seperti Tomcat , Jetty , dll.
Kami, Java EE pengembang, harus menulis kode menggunakan spesifikasi (yaitu mengimpor hanya
javax.*
kelas dalam kode kita bukan kelas khusus implementasi sepertiorg.jboss.wildfly.*
,com.sun.glassfish.*
, dll) dan kemudian kita akan dapat menjalankan kode kami pada pelaksanaan apapun (dengan demikian, pada setiap server aplikasi). Jika Anda terbiasa dengan JDBC, pada dasarnya konsepnya sama dengan cara kerja driver JDBC. Lihat juga ao. Secara sederhana, apa itu pabrik?The Java EE SDK Download dari Oracle.com pada dasarnya berisi server GlassFish bersama sekelompok dokumentasi dan contoh dan opsional juga NetBeans IDE. Anda tidak memerlukannya jika Anda menginginkan server dan / atau IDE yang berbeda.
EJB adalah bagian dari spesifikasi Java EE. Lihat, itu ada di Java EE API . Server aplikasi Java EE yang lengkap mendukungnya, tetapi kontainer JSP / Servlet sederhana tidak.
Lihat juga:
Tidak, seperti yang dikatakan, EJB adalah bagian dari Java EE. Spring adalah kerangka kerja mandiri yang menggantikan dan meningkatkan banyak bagian Java EE. Spring tidak selalu membutuhkan Java EE untuk dijalankan. Wadah servlet tanpa tulang seperti Tomcat sudah cukup. Sederhananya, Spring adalah pesaing Java EE. Misalnya "Spring" (mandiri) bersaing EJB / JTA, Spring MVC bersaing JSF / JAX-RS, Spring DI / IoC / AOP bersaing CDI, Spring Security bersaing JAAS / JASPIC, dll.
Kembali selama masa J2EE / EJB2 lama, API EJB2 mengerikan untuk diimplementasikan dan dipelihara. Musim semi adalah alternatif yang jauh lebih baik untuk EJB2. Tetapi sejak EJB3 (Java EE 5), API EJB jauh lebih baik berdasarkan pelajaran yang dipetik dari Spring. Sejak CDI (Java EE 6), sebenarnya tidak ada alasan untuk melihat lagi kerangka kerja lain seperti Spring untuk membuat pengembang lebih mudah untuk mengembangkan antara lain lapisan layanan.
Hanya ketika Anda menggunakan wadah servlet tanpa tulang seperti Tomcat dan tidak dapat beralih ke server Java EE, maka Spring lebih menarik karena lebih mudah untuk menginstal Spring pada Tomcat. Tidak mungkin menginstal misalnya wadah EJB di Tomcat tanpa memodifikasi server itu sendiri, Anda pada dasarnya akan menciptakan kembali TomEE.
Lihat juga:
sumber
Java Enterprise Edition (Java EE) adalah spesifikasi payung yang merujuk sejumlah spesifikasi lebih rinci lainnya, di mana Enterprise JavaBeans (EJB) adalah salah satu yang lebih penting.
Baca ini - ini menjelaskan perbedaan antara Java EE dan Spring
Terima kasih...
sumber
Sumber - Java 2 Platform, Enterprise Edition (J2EE) mendefinisikan standar untuk mengembangkan aplikasi perusahaan multitier berbasis komponen. J2EE menyederhanakan membangun aplikasi perusahaan yang portabel, dapat diskalakan, dan yang terintegrasi dengan mudah dengan aplikasi dan data lama.
Sumber - Teknologi Enterprise JavaBeans (EJB) adalah arsitektur komponen sisi server untuk Platform Java, Enterprise Edition (Java EE). Teknologi EJB memungkinkan pengembangan aplikasi terdistribusi, transaksional, aman dan portabel yang cepat dan mudah berdasarkan teknologi Java.
Java EE adalah spesifikasi.
EJB adalah arsitektur komponen sisi server untuk Java EE
sumber
Sederhananya - JavaEE adalah sebuah platform.
Itu terdiri dari banyak spesifikasi yang hanya API. Implementasi konkret spesifik dari API ini adalah apa yang disebut 'Implementasi Referensi'
EJB adalah Enterprise Java Beans
sumber