คำถามและคำตอบสัมภาษณ์จำศีล 50 อันดับแรก [สำหรับผู้เริ่มต้นและผู้มีประสบการณ์]
เผยแพร่แล้ว: 2020-12-15สารบัญ
บทนำ
ไฮเบอร์เนตเป็นเทคนิคโอเพนซอร์ซที่มีน้ำหนักเบาใน Java ในบล็อกนี้ เราจะเข้าใจกระบวนการและกลไกเกี่ยวกับไฮเบอร์เนตด้วยคำถามสัมภาษณ์ “50 ไฮเบอร์เนต” อันดับต้น ๆ พร้อมคำตอบ
ไฮเบอร์เนตคืออะไร?
ไฮเบอร์เนตเป็นเครื่องมือที่มีน้ำหนักเบาในการทำแผนที่เชิงวัตถุโอเพนซอร์ส มีกรอบงานเพื่อจับคู่โมเดลโดเมนเชิงวัตถุกับฐานข้อมูลเชิงสัมพันธ์สำหรับแอปพลิเคชันบนเว็บ
ต่อไปนี้คือคำถามสองสามข้อที่เราควรถามเกี่ยวกับข้อกำหนดของแอปพลิเคชันก่อนที่เราจะปรับโหมดไฮเบอร์เนต:
- โมเดลข้อมูลใดที่เราสามารถใช้ได้สำหรับการพัฒนาโครงการใหม่ การออกแบบแอปพลิเคชัน หรือโมเดลข้อมูล
- ระดับของประสิทธิภาพแคชคืออะไร?
- เราจะกำหนดการเขียนแบบง่ายหรือซับซ้อนได้อย่างไร
- ความสามารถในการปรับขนาดคืออะไร และเราสามารถใช้ในสถานการณ์ใดได้บ้าง
- การกำหนดเวอร์ชันฐานข้อมูลอัตโนมัติมีความสำคัญในสถานการณ์ใด
- เราต้องการความคงอยู่เชิงสัมพันธ์สำหรับ JAVA หรือไม่
- อะไรคือการใช้ Support for Query Language และสถานการณ์ใดที่เราสามารถใช้ได้?
- กระบวนการคงอยู่อย่างโปร่งใสและผลกระทบต่อโครงการมีอะไรบ้าง
เครื่องมือ ORM
โดยจะตีความการสร้างข้อมูล การจัดการข้อมูล และการเข้าถึงข้อมูล เป็นวิธีการเขียนโปรแกรมที่จับคู่วัตถุกับข้อมูลที่จัดเก็บไว้ในฐานข้อมูล

กรอบการไฮเบอร์เนตคืออะไร?
ไฮเบอร์เนตเป็นโซลูชันการทำแผนที่เครื่องมือ ORM ที่ใช้ Java เชิงวัตถุ เป็นการแมปเชิงวัตถุที่เป็นขั้นตอนการเขียนโปรแกรมเพื่อจับคู่วัตถุแบบจำลองโดเมนแอปพลิเคชันกับตารางฐานข้อมูลเชิงสัมพันธ์ มันนำแหล่งที่มาของการใช้งาน Java Persistence API มาใช้ซึ่งมอบทางเลือกที่ยอดเยี่ยมในฐานะเครื่องมือ ORM ที่มีข้อดีของการมีเพศสัมพันธ์แบบหลวม ๆ
ประโยชน์ของ Hibernate Framework
- น้ำหนักเบาพร้อมประสิทธิภาพที่รวดเร็ว: ประสิทธิภาพของเฟรมเวิร์กไฮเบอร์เนตนั้นคล่องตัวด้วยความช่วยเหลือของแคช ซึ่งทำงานภายในในเฟรมเวิร์กไฮเบอร์เนต แคชในเฟรมเวิร์กไฮเบอร์เนตคือแคชระดับแรกและแคชระดับที่สอง
- ฐานข้อมูล Autonomous Query: HQL (Hibernate Query Language) เป็นตัวแปรเชิงวัตถุของ SQL มันสร้างแบบสอบถามฐานข้อมูลอิสระโดยไม่ต้องเขียนแบบสอบถามเฉพาะฐานข้อมูล
- การสร้างตารางอัตโนมัติ: กรอบงานไฮเบอร์เนตให้ความสามารถในการสร้างตารางของฐานข้อมูลโดยอัตโนมัติ โดยไม่ต้องสร้างตารางในฐานข้อมูลด้วยตนเอง
- ลดความซับซ้อนของการรวมที่ซับซ้อน: การดึงข้อมูลจากตารางรวมเป็นเรื่องง่ายในเฟรมเวิร์กไฮเบอร์เนต
- รองรับสถิติการสืบค้นและสถานะฐานข้อมูล: ไฮเบอร์เนตรักษาแคชการสืบค้นและให้ผลลัพธ์ทางสถิติที่รวดเร็ว
สถาปัตยกรรมไฮเบอร์เนต
สถาปัตยกรรมไฮเบอร์เนตรวมอ็อบเจ็กต์จำนวนมาก เช่น อ็อบเจ็กต์ถาวร โรงงานเซสชัน โรงงานธุรกรรม โรงงานการเชื่อมต่อ เซสชัน ธุรกรรม
สถาปัตยกรรมไฮเบอร์เนตแบ่งออกเป็นสี่ชั้น:
- ระดับแอปพลิเคชัน Java
- ระดับเฟรมเวิร์กไฮเบอร์เนต
- ระดับ API แบ็คแฮนด์
- ระดับฐานข้อมูล
ทำไมเราควรเลือกกระบวนการไฮเบอร์เนต?
ต่อไปนี้เป็นเทคนิคและกระบวนการที่เราสามารถเลือกได้เมื่อเราเริ่มการปรับกระบวนการ:
- ไฮเบอร์เนตช่วยให้นักพัฒนาสามารถกำหนดฟิลด์ประเภทเวอร์ชันใน แอปพลิเคชัน ซึ่งสามารถแก้ไขได้ในข้อมูลแบบเรียลไทม์ คุณลักษณะนี้มอบให้แก่ผู้ใช้ พวกเขาสามารถบันทึกข้อมูลและแก้ไขได้ในเวลาเดียวกัน
- ไฮเบอร์เนตใช้ความช่วยเหลือกับคำอธิบายประกอบ JPA สำหรับตัวอย่าง: @Entity, @Table, @Col เป็นต้น
- ในการไฮเบอร์เนต การรวมการเชื่อมต่อเป็นเทคนิคในการเชื่อมต่อฐานข้อมูล เมื่อเราสร้างและจัดเก็บในแคชโดยเครื่องมือภายนอก การเชื่อมต่อเหล่านี้เราสามารถนำกลับมาใช้ใหม่จากแคชเองได้ในอนาคต หากเราจำเป็นต้องใช้ซ้ำเพื่อเชื่อมต่อกับฐานข้อมูลเดียวกันใน แอปพลิเคชันของเราที่เราสร้างขึ้น
- ไฮเบอร์เนตขยายขอบเขตความสามารถในการปรับขนาดได้ดีที่สุดในทุกสภาพแวดล้อม สามารถฝึกฝนได้สำหรับโครงการทุกขนาด ตั้งแต่แอปขนาดเล็กไปจนถึงแอปที่คนนับล้านใช้
- ในโหมดไฮเบอร์เนต การกำหนดเวอร์ชันของฐานข้อมูลเป็นเครื่องมือสำคัญที่สนับสนุนการป้องกันการเปลี่ยนแปลงที่ย้อนกลับโดยผู้ใช้รายอื่นโดยไม่ได้ตั้งใจ อนุญาตให้บันทึกประเภทเวอร์ชันภายในแอปพลิเคชัน เมื่อมีการอัปเดตหรือจัดเก็บข้อมูล ประเภทเวอร์ชันและการประทับเวลา เรายังสามารถบันทึกเพื่อติดตามได้อีกด้วย
- ไฮเบอร์เนตใช้การคงอยู่แบบโปร่งใส และนักพัฒนาไม่จำเป็นต้องเขียนโค้ดอย่างชัดเจนเพื่อแมปทูเพิลของตารางฐานข้อมูลกับออบเจกต์ของแอปพลิเคชันในระหว่างการโต้ตอบกับ RDBMS
- ในโหมดไฮเบอร์เนต การจัดการทรานแซกชันคือวิธีการทำชุดคำสั่งหรือคำสั่งให้สำเร็จ ในโหมดไฮเบอร์เนต การจัดการธุรกรรมจะทำโดยอินเทอร์เฟซธุรกรรม
ห้าเหตุผลที่ควรพิจารณาไฮเบอร์เนตเหนือ JDBC
- มันแก้ปัญหาไม่ตรงกันที่ซับซ้อนเชิงวัตถุเชิงซ้อน:
เป็นโซลูชันที่รวดเร็วในภาษาการเขียนโปรแกรมเชิงวัตถุพร้อมฐานข้อมูลเชิงสัมพันธ์
ตัวอย่าง: ความคลาดเคลื่อนในประเภทข้อมูล ความแตกต่างของโครงสร้างและความสมบูรณ์ ข้อยกเว้นด้านการจัดการและธุรกรรมล้วนเป็นสาเหตุให้เกิดความไม่ตรงกันที่ซับซ้อนเชิงวัตถุเชิงสัมพันธ์
2. การทำแผนที่วัตถุอัตโนมัติ:
JDBC และ Hibernate รองรับการทำแผนที่วัตถุอัตโนมัติ” ความคงอยู่โปร่งใส "วิธีนี้ให้ไฮเบอร์เนตเพื่อร่างตารางฐานข้อมูลไปยังออบเจกต์ของแอปพลิเคชันผ่านการโต้ตอบ
- ภาษาแบบสอบถามไฮเบอร์เนต (HQL)
ไฮเบอร์เนตจะรักษา Structured Query Language (SQL) JDBC รองรับเฉพาะ SQL, Hibernate Query Language (HQL) เกี่ยวข้องกับ SQL เนื่องจากเป็นภาษาคิวรีเชิงวัตถุ ในการเชื่อมต่อวิธีนี้ HQL จะตีความคิวรีไปยังคิวรี SQL ที่สามารถเปิดใช้การดำเนินการในฐานข้อมูลได้
- ความเป็นอิสระของฐานข้อมูล
ไฮเบอร์เนตจัดเตรียมการแมปการเชื่อมต่อตารางข้อมูลและแอปพลิเคชันผ่านไฟล์ XML; มันมีวิธีที่ดีกว่าในการถ่ายโอนข้อมูลไปยังฐานข้อมูลใหม่หากจำเป็น ในขณะที่ลักษณะการเข้าถึงฐานข้อมูล ข้อมูลเป็นสิ่งที่จำเป็น ถ้าในกรณีของการนำกลับมาใช้ใหม่ได้ การแคชเป็นองค์ประกอบที่จำเป็นสำหรับประสิทธิภาพของฐานข้อมูล ซึ่งช่วยลดเวลาและสนับสนุนแอปพลิเคชันในแบบเรียลไทม์
- การรวมการเชื่อมต่อในไฮเบอร์เนต:
ไฮเบอร์เนตสามารถบรรลุประสิทธิภาพที่เชื่อถือได้มากขึ้น มันมี "การรวมการเชื่อมต่อ"; นี่เป็นกระบวนการในการรวบรวมการเชื่อมต่อฐานข้อมูลในแคช การเชื่อมต่อเหล่านี้สามารถนำกลับมาใช้ใหม่ได้จากแคชเอง หากแอปพยายามเชื่อมต่อกับฐานข้อมูลที่เหมือนกันหลายครั้ง
คำถามและคำตอบ สัมภาษณ์ จำศีล
คำถาม: 1 คุณกำหนดค่าไฮเบอร์เนตให้เขียนคำสั่ง SQL ที่ดำเนินการและใช้พารามิเตอร์ผูกกับไฟล์บันทึกอย่างไร
คำตอบ: นี่คือขั้นตอนด้านล่าง:
สร้างส่วนบันทึกที่แตกต่างกันสองส่วนและระดับบันทึกเพื่อบันทึกคำสั่ง SQL ที่ดำเนินการและผูกพารามิเตอร์:
- หมวด หมู่ org.hibernate.SQL
- หมวดหมู่ org.hibernate.type.descriptor.sql พร้อมบันทึกระดับ TRACE
คำถาม:2 อธิบายคุณลักษณะที่คุณชื่นชอบของเฟรมเวิร์กไฮเบอร์เนต
คำตอบ: เครื่องมือ ORM ไฮเบอร์เนตให้ภาษาแบบสอบถามที่มีประสิทธิภาพ (HQL)
คำถาม:3 คุณจะแยกความแตกต่างระหว่าง Entity Beans และ Hibernate ได้อย่างไร
คำตอบ: ถั่วเอนทิตี คือคอนเทนเนอร์ คลาส ตัวอธิบาย ไฮเบอร์เนต เป็นเครื่องมือที่จะคงโครงสร้างอ็อบเจ็กต์ไว้กับคลาสในทันที
คำถาม:4 อธิบายกระบวนการของออบเจกต์ Session และวิธีที่เราสามารถใช้ในแคชระดับแรกและแคชระดับที่สอง
คำตอบ: การแคชระดับแรก : เริ่มต้นด้วยแต่ละ เซสชัน โดยมี อ็อบเจ็กต์ " เซสชัน "
การแคชระดับที่สอง: สามารถแชร์ได้ มากกว่า หลาย เซสชัน
คำถาม:5 การสืบทอดทำงานอย่างไรในโหมดไฮเบอร์เนต กลยุทธ์ต่างๆ ที่สามารถนำมาใช้ได้มีอะไรบ้าง?
คำตอบ: มรดกสามประเภท:
- ตารางต่อลำดับชั้น
- ตารางต่อชั้นคอนกรีต
- ตารางต่อคลาสย่อย
คำถาม:6 การล็อกทำงานอย่างไรในโหมดไฮเบอร์เนต มีกลไกการล็อคแบบต่างๆ อะไรบ้าง?
คำตอบ: กลไกการล็อคมองโลกในแง่ดีและมองโลกในแง่ คำถาม:7 การจัดการธุรกรรมทำงานอย่างไรในโหมดไฮเบอร์เนต
คำตอบ: ใช้งานได้ด้วยความช่วยเหลือของ (JTA, JDBC)
คำถาม:8 ขี้เกียจโหลดในโหมดไฮเบอร์เนตคืออะไร?
คำตอบ: กลไกนี้ในเอนทิตีและการเชื่อมโยงโดยใช้พร็อกซีของคลาส
คำถาม:9 กลยุทธ์การดึงข้อมูลต่างๆ ที่มีอยู่ในโหมดไฮเบอร์เนตมีอะไรบ้าง
คำตอบ: เข้าร่วมการดึงข้อมูลและเลือกการดึงข้อมูล
คำถาม:10 กลยุทธ์การดึงข้อมูลต่างๆ ที่มีอยู่ในโหมดไฮเบอร์เนตมีอะไรบ้าง
คำตอบ: Join-Fetching และ Select Fetchings เป็นการดึงข้อมูลที่มีอยู่ใน Hibernate
คำถาม:11 วิธีรับ () และโหลด () ในโหมดไฮเบอร์เนตต่างกันอย่างไร

คำตอบ : getting() และ load() ซึ่งใช้สำหรับดึงข้อมูลสำหรับตัวระบุที่กำหนด Get() method return null,load() method แสดงข้อผิดพลาดของวัตถุที่ไม่พบประเภทของข้อยกเว้น
คำถาม:12 เหตุใดคุณจึงไม่ควรทำให้คลาสเอนทิตีเป็นขั้นสุดท้าย
คำตอบ: ใช้สำหรับ ผูก เอนทิตี
คำถาม:13 อธิบายข้อดีและข้อเสียของวัตถุที่แยกออกมา
คำตอบ: มันเชื่อมต่อกับเซสชันไฮเบอร์เนตในอดีต มันมีคำอธิบายในฐานข้อมูล
คำถาม:14 ภาษาคิวรีไฮเบอร์เนต (HQL) คืออะไร
คำตอบ: ขึ้นอยู่กับแนวคิด OOPS
คำถาม:15 ระบุบทบาทของอินเทอร์เฟซ SessionFactory ในโหมดไฮเบอร์เนต
คำตอบ: เป็นกระบวนการของ thread-safe object และสามารถใช้ในกระบวนการของเธรดแอปพลิเคชันได้
คำถาม:16 ประโยชน์ของการไฮเบอร์เนตเหนือ JDBC คืออะไร
คำตอบ: ให้ประสิทธิภาพและความสามารถในการขยายที่รวดเร็วที่สุด
คำถาม:17 อธิบายฐานข้อมูลบางส่วนที่ดูแลโดย Hibernate
คำตอบ: ฐานข้อมูลเชิงสัมพันธ์โดยใช้ JDBC
คำถาม:18 คุณจะแยกความแตกต่างของวิธี session.save() และ session.persist() ได้อย่างไร
คำตอบ: Session.save() ใช้สำหรับบันทึกวัตถุในฐานข้อมูลและ session.persist() สำหรับวัตถุชั่วคราวและถาวร
คำถาม:19 อธิบายเกี่ยวกับวิธีการอัพเดตและการรวม?
คำตอบ: สามารถใช้ในการแปลงวัตถุที่อยู่ในสถานะแยกออกได้
คำถาม:20 เป็นไปได้ไหมที่จะทำแผนที่คอลเลกชันด้วยตัวต่อตัวและตัวต่อตัว
คำตอบ: สามารถใช้ในตารางที่มี การ แมป กับหลายแถวในอีกตารางหนึ่ง
คำถาม:21 จะทำธุรกรรมในโหมดไฮเบอร์เนตได้อย่างไร?
คำตอบ: ด้วยความช่วยเหลือของการประกาศคลาส @transctional เราสามารถทำธุรกรรมได้
คำถาม:22 การแมปวัตถุ/การแมปเชิงสัมพันธ์แสดงอยู่ที่ไหนในไฮเบอร์เนต
คำตอบ: Hibernate ORM เป็นอ็อบเจ็กต์/การแมปเชิงสัมพันธ์
คำถาม:23 คุณคิดอย่างไรกับ Light Object
คำตอบ: Session, Query, Criteria, Transaction เป็นแนวคิดของ Light Object
คำถาม:24 @Transient ใน Hibernate คืออะไร ข้อดีของสิ่งนี้คืออะไร?
คำตอบ: @ Transient ใช้ใน javax ซึ่งเป็นแพ็คเกจการคงอยู่
คำถาม:25 จะรวม Struts Spring Hibernate ได้อย่างไร?
คำตอบ: ด้วยความช่วยเหลือของ ContextLoaderPlugIn เราสามารถรวมกันได้
คำถาม: 26 อธิบายเกี่ยวกับการบันทึก Hibernate Log4j
คำตอบ: ประกอบด้วยไฟล์ By log4j.xml และไฟล์ log4j.properties
คำถาม: 27 เราจะจำกัดการอัปเดตพร้อมกันในไฮเบอร์เนตได้อย่างไร
คำตอบ: ด้วยความช่วยเหลือของกระบวนการล็อกในแง่ร้าย เราสามารถจำกัดการอัปเดตพร้อมกันได้
คำถาม: 28 วิธีใดดีที่สุดในการพิจารณาคลาสถาวรของ Hibernate?
คำตอบ: มีวิธีการที่ดีที่สุดและแนวทางปฏิบัติที่ดีที่สุดมากมายที่เราสามารถใช้กับคลาสถาวรของการทำแผนที่และกลไกของคลาสได้
คำถาม 29 แนวคิดของการปรับเปลี่ยนวัตถุถาวรคืออะไร?
ตอบ: วัตถุถาวร จะถูกติดตามโดยการ จำศีล และถูกเก็บไว้ในฐานข้อมูลเมื่อมีคำขอกระทำ
คำถาม: 30 ความสัมพันธ์แบบหนึ่งต่อหลายทิศทางในโหมดไฮเบอร์เนตคืออะไร?
คำตอบ: มันคือการอ้างอิงของหมายเลขอ้างอิงของแอตทริบิวต์ความสัมพันธ์ของมุมมองต่างๆ ที่เป็นประโยชน์ของแอตทริบิวต์ mappedBy ซึ่งไฮเบอร์เนตมีความรู้ที่จำเป็นทั้งหมด ด้วยกระบวนการเหล่านี้ เราจำเป็นต้องกำหนดความสัมพันธ์แบบกลุ่มต่อหนึ่งแบบสองทิศทาง
อ่าน: ทักษะในการเป็นนักพัฒนาเต็มรูปแบบ
คำถาม: การแทนที่ค่าใน Message Resource Bundle คืออะไร?
คำตอบ: ResourceBundleMessageInterpolator ของ Hibernate Validator สร้าง ResourceBundleLocator สองอินสแตนซ์ หนึ่งรายการสำหรับการตรวจสอบความถูกต้อง ของ UserDefined ข้อความตรวจสอบมาตรฐาน – defaultResourceBundleLocator
คำถาม 32 อธิบายขั้นตอนการดำเนินการคำสั่ง SQL
คำตอบ: เป็นแคชระดับที่สองในลำดับเฉพาะเนื่องจากข้อ จำกัด ของคีย์ต่างประเทศไม่สามารถทำลายได้: การแทรก, การอัปเดต, การลบองค์ประกอบอาร์เรย์, การแทรกองค์ประกอบอาร์เรย์, การลบ, ในทิศทางที่นำเสนอ
คำถาม: 33 คุณจะตั้งค่าแคชระดับที่ 2 ใน Hibernate ด้วย EHCache ได้อย่างไร
คำตอบ: Terracotta Ehcache เป็นแคชสมัยใหม่ที่ทำงานเป็น แคชระดับที่สอง ของ Hibernate สามารถใช้เป็น แคชระดับที่สอง แบบ สแตนด์อโลน
คำถาม: 34 อะไรคือความแปรปรวนหลักระหว่าง Entity Beans และ Hibernate?
คำตอบ: เอนทิตีบีน ยังคงถูกดำเนินการโดย descriptors, containers, class. ไฮเบอร์เนต เป็นเพียงกลไกที่ทนทานต่อโครงสร้างอ็อบเจ็กต์กับลำดับชั้นของคลาสในฐานข้อมูลทันที
คำถาม: 35 อธิบายขั้นตอนในการเข้าร่วมที่จัดการโดยใช้ไฮเบอร์เนต?
คำตอบ: ด้วยความช่วยเหลือของ SQL Join เราสามารถจัดการได้
คำถาม 36 อธิบายกระบวนการไฮเบอร์เนตพร็อกซี่?
คำตอบ: ไฮเบอร์เนตพร็อกซี่ นี่หมายถึง ไฮเบอร์เนต เมื่อเราเรียกเซสชัน โหลด().
คำถาม: 37 อะไรคือข้อได้เปรียบหลักของการใช้ Hibernate มากกว่าการใช้ SQL?
คำตอบ: ด้วยแนวปฏิบัติของ ORM และด้วยการใช้ Hibernate ดังนั้นการใช้ SQL จะทำให้ Hibernate หลีกเลี่ยงการเขียนข้อความค้นหาขนาดใหญ่
คำถาม: 38 อธิบายรูปแบบการออกแบบที่เราสามารถใช้ในโหมดไฮเบอร์เนตได้หรือไม่?
คำตอบ : Proxy pattern, Domain model และ object model เป็นรูปแบบการออกแบบ
อ่านเพิ่มเติม: อาชีพในการพัฒนาเต็มกอง
คำถาม: 39 อธิบายสถาปัตยกรรมของไฮเบอร์เนต
คำตอบ: ไฮเบอร์เนตมีสถาปัตยกรรมแบบเลเยอร์ซึ่งอำนวยความสะดวกให้ผู้ใช้จัดการโดยไม่ต้องเข้าใจ API พื้นฐาน
คำถาม: 40 ระบุประเภทข้อมูลที่รองรับในการไฮเบอร์เนตหรือไม่
คำตอบ: IntegerType,FloatType,DoubleType,CharacterType,ShortType.
คำถาม: 41 (JDO, CMP) คืออะไร?
คำตอบ: เทคโนโลยีการคงอยู่ของ Java
คำถาม: 42 อะไรคือความแปรปรวนหลักระหว่างสปริงและไฮเบอร์เนต?
คำตอบ: Spring และ Hibernate เป็นเฟรมเวิร์กสองเฟรมที่แยกจากกัน สปริง ทำสัญญากับการขยายกระแสของแอปพลิเคชัน ไฮเบอร์เนต เป็นเรื่องเกี่ยวกับปฏิสัมพันธ์ระหว่างแอปพลิเคชันและฐานข้อมูล
คำถาม: 43 เราจะพบโซลูชัน ORM ในโหมดไฮเบอร์เนตได้เมื่อใด
คำตอบ: ไฮเบอร์เนตเป็นแนวคิดของโซลูชัน Object/Relational Mapping (ORM) สำหรับ Java; คำว่า การทำแผนที่วัตถุ/เชิงสัมพันธ์ เกี่ยวข้องกับขั้นตอนของข้อมูลการแมประหว่างคำอธิบายแบบจำลองวัตถุกับคำอธิบายแบบจำลองข้อมูลเชิงสัมพันธ์
คำถาม:44 กล่าวถึงกระบวนการทีละขั้นตอนเพื่อทำธุรกรรมให้เสร็จสิ้นในโหมดไฮเบอร์เนต
คำตอบ: ด้วยความช่วยเหลือของคุณสมบัติ ACID-> (Atomicity, Consistency, Isolation และ Durability)
คำถาม:45 การแมปในโหมดไฮเบอร์เนตอยู่ที่ไหน
คำตอบ: การแมปไฮเบอร์เนตเป็นคุณสมบัติของไฮเบอร์เนต พวกเขาจัดระเบียบการเชื่อมต่อระหว่างตารางฐานข้อมูลสองตารางในขณะที่แอตทริบิวต์ในแบบจำลองของคุณ ที่ช่วยให้คุณขับเคลื่อนการเชื่อมโยงในแบบสอบถามแบบจำลองและมาตรฐานของคุณได้อย่างรวดเร็ว
คำถาม:46 คุณสามารถสัมผัสถึงความสัมพันธ์ประเภทต่างๆ ที่เป็นไปได้ในการแมปไฮเบอร์เนตได้หรือไม่
คำตอบ: ตัวต่อตัว ตัวต่อตัว ตัวต่อตัว ตัวต่อตัว ตัวต่อตัว
คำถาม:47 เราจะกำหนดอ็อบเจ็กต์แมปในไฮเบอร์เนตได้ที่ไหน
คำตอบ: การแปลง ออบเจก ต์ Java เป็นคำสั่ง SQL เพื่อจัดเก็บข้อมูล
คำถาม:48 คุณสามารถระบุประเภทคอลเลกชันจำนวนมากในโหมดไฮเบอร์เนตได้หรือไม่?
คำตอบ: HashMap, HashSet, TreeSet และ Arraylist เป็นประเภทคอลเลกชันใน Hibernate
คำถาม:49 กระบวนการดึงข้อมูลจากฐานข้อมูลในโหมดไฮเบอร์เนตมีขั้นตอนอย่างไร
คำตอบ: ด้วยความช่วยเหลือของเกณฑ์ไฮเบอร์เนตโดยใช้ฟังก์ชัน beginTransaction() API กับเซสชัน เราสามารถดึงข้อมูลได้

คำถาม:50 อธิบายเกี่ยวกับไฟล์การแมปไฮเบอร์เนตโดยใช้คำอธิบายประกอบ JPA @NamedQuery และ @NamedNativeQuery
คำตอบ: @NamedQuery และ @NamedNativeQuery เป็นประเภทของคิวรี HQL ซึ่งจัดการความซับซ้อนของการแปลง HQL เป็นภาษา SQL จำนวนมาก
ลงทะเบียนเรียน หลักสูตรวิศวกรรมซอฟต์แวร์ จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว
บทสรุป
เราหวังว่าบทความนี้จะช่วยให้คุณเข้าใจคำถาม “สัมภาษณ์” 50 อันดับแรกของไฮเบอร์เนตสำหรับผู้เริ่มต้นและมืออาชีพ
หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับการพัฒนาซอฟต์แวร์แบบฟูลสแตก โปรดดูโปรแกรม Executive PG ของ upGrad & IIIT-B ในการพัฒนาซอฟต์แวร์แบบฟูลสแตก ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีการฝึกอบรมที่เข้มงวดมากกว่า 500 ชั่วโมง โครงการมากกว่า 9 โครงการ และการมอบหมายงาน สถานะศิษย์เก่า IIIT-B โครงการหลักและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

