ความแตกต่างระหว่าง Ejb และ Hibernate ความแตกต่างระหว่าง
Ejb กับ Hibernate
เพื่อไปที่ EJB คุณควรทำความเข้าใจกับพื้นหลังของที่ที่มันเล็ดลอดออกมา มีถั่วเอนทิตี้สองประเภท นี่คือ CMP และ BMP CMP หมายถึง Container Persistence ที่มีการจัดการคอนเทนเนอร์ขณะที่ BMP หมายถึง Bean Managed Persistence EJB ถูกใช้เป็นพิเศษในการกำหนดวัตถุและ serialization เมื่อเกี่ยวข้องกับฐานข้อมูลเชิงสัมพันธ์ใน SQL
เมื่อเริ่มพัฒนาแอพพลิเคชันที่ซับซ้อนแล้วจะเริ่มต้นด้วยการสร้างโมเดล ควรใช้ชั้นเรียนและออบเจ็กต์มากกว่าตารางเนื่องจากมีความสัมพันธ์ที่ซับซ้อนซึ่งอาจก่อให้เกิดปัญหาได้หากไม่ได้นำไปปฏิบัติจริง นี้ในสาระสำคัญหมายความว่าเราจัดการกับระบบที่ใช้การออกแบบของการคิดในวัตถุและไม่อยู่ในตาราง การใช้ฐานข้อมูลเชิงสัมพันธ์ค่อนข้างรวดเร็วและผ่านการทดสอบในเวลา เมื่อเทียบกับ serialization วัตถุช่วยประหยัดเวลาในการ serialization วัตถุที่ซับซ้อนเป็นกระบวนการที่ช้ามาก การใช้เทคโนโลยีฐานข้อมูลเชิงสัมพันธ์เป็นไปอย่างรวดเร็วและเป็นเวลาทดสอบและเป็นที่นิยมในหมู่นักพัฒนาจำนวนมากและด้วยเหตุนี้จึงเป็นที่ต้องการCMP ใน EJB1 ได้รับการออกแบบเพื่อให้เหมาะสมกับการใช้งานกับโต๊ะง่ายๆที่ไม่ได้มีความสัมพันธ์ที่ซับซ้อนกับตารางอื่น ๆ การใช้ CMP จะหลีกเลี่ยงการอ้างอิงที่อ้างถึงฐานข้อมูลอ้างอิง นี้ในความเป็นจริงหมายความว่าเป็นแบบพกพามากขึ้นและล็อคผู้ขายในไม่เกิดขึ้น EJB 1 ยังคงมีอยู่ของข้อมูลไปยังฐานข้อมูลอ็อบเจ็กต์นอกเหนือจากฐานข้อมูลเชิงสัมพันธ์
Hibernate เป็นเครื่องมือ ORM ที่ไม่มีเส้นโค้งการเรียนรู้สูงชันที่เหมือนกันกับ EJB และไม่ใช่ข้อผิดพลาดที่เกิดจาก EJB ไฮเบอร์เนตเป็นที่นิยมเนื่องจากมีความยืดหยุ่นทำให้ Servlets และ JSP สามารถใช้งานได้ Hibernate สร้างขึ้นตามข้อกำหนดของ J2EE ที่ทำให้สามารถใช้งานได้กับแอพพลิเคชันส่วนใหญ่ที่นักพัฒนาซอฟต์แวร์จะมี Hibernate เป็นเครื่องมือพิเศษของ ORM เนื่องจากไม่เพียง แต่ใช้ในตู้คอนเทนเนอร์ EJB เท่านั้น แต่ยังสามารถใช้ได้กับตู้คอนเทนเนอร์แบบแยกเดี่ยวและตู้คอนเทนเนอร์เว็บด้วยนี่คือข้อแตกต่างหลักที่โดดเด่นระหว่าง EJB และ Hibernate การพัฒนาด้วย Hibernate จึงง่ายและซับซ้อนน้อยกว่าเมื่อเทียบกับการใช้ EJB
Hibernate ดูเหมือนจะเป็นที่นิยมมากในหมู่ผู้ใช้สภาพแวดล้อม J2EE และถ้า EBJ ดำเนินต่อไปกับการพัฒนาคุณลักษณะที่ซับซ้อนซึ่งใช้เวลาสักครู่เพื่อให้ผู้ใช้คุ้นเคยกับ Hibernate จะเป็นผู้ที่โดดเด่นในสาขานี้และ EJB อาจพบว่าตัวเองเป็น ล็อคจาก J2EE ณ ปัจจุบันนี้จะไม่ติดต่อกับนักพัฒนาซอฟต์แวร์ส่วนใหญ่ที่พยายามจะกำหนดเป้าหมายในตลาด
สรุป
EJB เป็นเอนทิตีเอนที่ใช้เป็นพิเศษสำหรับการสร้างสูตร
มีความเป็นไปได้ที่จะใช้ตารางและการใช้งานของเซสชันถั่วในการอ่านและการจัดการข้อมูลแม้ว่า EBI จะไม่ได้ใช้งานจริง ภาษาแบบสอบถามสำหรับการพัฒนาเรียกว่า EJB-QL
ข้อผิดพลาด EBJ มีแนวโน้มที่
Hibernate ค่อนข้างเข้าใจได้ง่ายและใช้
Hibernate ไม่ใช่ข้อผิดพลาดที่เกิดจาก EJB