mybatis คืออะไรและคุณลักษณะของ mybatis คืออะไร? ก่อนอื่นให้ฉันแนะนำแนวคิดและลักษณะของ mybatis ให้คุณ
ข้อดีและข้อเสียของการพัฒนา JDBC:
1) ข้อดี: ง่ายและง่ายต่อการเรียนรู้การเริ่มต้นใช้งานง่ายมีความยืดหยุ่นมากในการสร้าง SQL มีประสิทธิภาพสูง
2) ข้อเสีย: รหัสนั้นยุ่งยากและยากที่จะเขียนรหัสคุณภาพสูง (เช่น: การปล่อยทรัพยากร, ความปลอดภัยของการฉีด SQL ฯลฯ )
นักพัฒนาจำเป็นต้องเขียนทั้งตรรกะทางธุรกิจและการสร้างวัตถุและการทำลายล้างและพวกเขาจะต้องจัดการไวยากรณ์ของฐานข้อมูลเฉพาะพื้นฐาน (ตัวอย่างเช่น: pagination)
3) เหมาะสำหรับการทำงานของข้อมูลแบทช์ที่มีขนาดใหญ่เป็นพิเศษความเร็วเร็ว
ข้อดีและข้อเสียของการพัฒนาไฮเบอร์เนต:
1) ข้อดี: ไม่จำเป็นต้องเขียน SQL มันได้รับการออกแบบและเข้าถึงอย่างสมบูรณ์ในวิธีที่มุ่งเน้นวัตถุและไม่จำเป็นต้องกังวลเกี่ยวกับไวยากรณ์ของฐานข้อมูลเฉพาะพื้นฐาน (ตัวอย่างเช่น: pagination) เป็นเรื่องง่ายที่จะเข้าใจ
2) ข้อเสีย: เมื่อจัดการกับธุรกิจที่ซับซ้อนมันมีความยืดหยุ่นไม่ดีและยากที่จะเขียนและทำความเข้าใจ HQL ที่ซับซ้อนเช่นงบ HQL สำหรับแบบสอบถามหลายตาราง
3) เหมาะสำหรับการทำงานของข้อมูลชุดขนาดเล็กและขนาดกลางความเร็วช้า
1) ตามการสนับสนุนสองประการข้างต้นเราจำเป็นต้องหาจุดสมดุลตรงกลางหรือไม่? การรวมข้อดีของพวกเขาและละทิ้งข้อเสียของพวกเขา
นี่คือ mybatis ซึ่งตอนนี้ได้รับการรับรองจากองค์กรที่หลากหลาย
2) MyBatis เป็นโครงการโอเพ่นซอร์สของ Apache ในปี 2010 โครงการนี้ถูกย้ายจาก Apache Software Foundation เป็น Google Code และถูกเปลี่ยนชื่อ MyBatis อพยพไปยัง GitHub ในเดือนพฤศจิกายน 2013
3) คำว่า Ibatis มาจากการรวมกันของ "อินเทอร์เน็ต" และ "abatis" และเป็นกรอบการคงอยู่ของจาวา Ibatis จัดเตรียมเฟรมเวิร์กเลเยอร์การคงอยู่รวมถึงแผนที่ SQL และวัตถุการเข้าถึงข้อมูล (DAO)
4) JDBC/dbutils/Springdao, Hibernate/Springorm, MyBaits เป็นหนึ่งในโซลูชั่น ORM
โอเคให้ฉันแนะนำลักษณะและข้อดีของ mybaits สั้น ๆ เนื้อหาเฉพาะมีดังนี้:
1. การแยกคำสั่งและรหัส SQL
มันสะดวกสำหรับการจัดการและการบำรุงรักษาแบบครบวงจรและไม่จำเป็นต้องใช้คำสั่ง SQL แบบแยกส่วนในรหัส Java อย่างไรก็ตามเมื่อคำสั่ง SQL ไม่ถูกต้องคอนโซลจะไม่พิมพ์บันทึก
โซลูชัน-Cite Log4j
2. ใช้แท็กเพื่อประกบคำสั่ง SQL
แม้ว่ามันจะสะดวกกว่าในการเขียนคำสั่ง SQL อย่างง่าย แต่ก็ยากที่จะแยกข้อความที่ซับซ้อน
3. การทำแผนที่อัตโนมัติของชุดผลลัพธ์และวัตถุ Java
ทุกคนที่เขียน Hibernate รู้ว่าเมื่อ Hibernate เชื่อมต่อกับฐานข้อมูลเพื่อสร้างคำสั่ง SQL จะสร้างคลาสเอนทิตีฐานข้อมูลโดยอัตโนมัติและไฟล์การแมป ใน MyBaits มันช่วยให้เราทำสิ่งนี้ได้ อย่างไรก็ตามฟิลด์ฐานข้อมูลค่อนข้างสูงและไฟล์เอนทิตีและไฟล์การกำหนดค่าจำเป็นต้องเขียนด้วยลายมือ
4. การโหลดทันที
เมื่อหน้าแสดงข้อมูลจำนวนมากในเวลาเดียวกันการโหลด hibernate ที่ล่าช้าจะสร้างคลาสพร็อกซีจำนวนมากโดยใช้ทรัพยากร MyBaits ไม่สามารถเข้าถึงฐานข้อมูลผ่านการเข้าถึงล่าช้า