MyBatis เดิมเป็นโครงการโอเพ่นซอร์สของ Apache อพยพไปยัง GitHub ในเดือนพฤศจิกายน 2013
คำว่า Ibatis มาจากการรวมกันของ "อินเทอร์เน็ต" และ "abatis" และเป็นกรอบการคงอยู่ของจาวา Ibatis จัดเตรียมเฟรมเวิร์กเลเยอร์การคงอยู่รวมถึงแผนที่ SQL และวัตถุการเข้าถึงข้อมูล (DAO)
ก่อนอื่นแนะนำความหมายของ mybatis
MyBatis เป็นกรอบการทำงานที่ยอดเยี่ยมและยาวนานซึ่งรองรับการสืบค้น SQL แบบธรรมดาขั้นตอนการจัดเก็บและการทำแผนที่ขั้นสูง MyBatis กำจัดการตั้งค่ามือของรหัสและพารามิเตอร์ JDBC เกือบทั้งหมดและพารามิเตอร์และบรรจุภัณฑ์ดึงข้อมูลของชุดผลลัพธ์ MyBatis สามารถใช้ XML อย่างง่ายหรือคำอธิบายประกอบสำหรับการกำหนดค่าและการแมปดั้งเดิมและแมปอินเทอร์เฟซและ pojo ของ Java (วัตถุ Java เก่าธรรมดา, วัตถุ Java ธรรมดา) ลงในบันทึกในฐานข้อมูล
2. mybatis เริ่มต้นอย่างรวดเร็ว
2.1.
1. สร้างรายการทดสอบ
2. เพิ่มแพ็คเกจ Jar ที่เกี่ยวข้อง
【 mybatis 】
mybatis-3.1.1.jar
【 MySQL Driver Pack 】
mysql-connector-java-5.1.7-bin.jar
3. สร้างฐานข้อมูลและตารางสำหรับฐานข้อมูล MySQL
สคริปต์ SQL มีดังนี้:
สร้างฐานข้อมูล mybatis; ,);
ดำเนินการสคริปต์ SQL ในฐานข้อมูล MySQL เพื่อดำเนินการสร้างฐานข้อมูลและตารางให้เสร็จสมบูรณ์ดังนี้:
เมื่อมาถึงจุดนี้การเตรียมการทั้งหมดสำหรับสภาพแวดล้อมการพัฒนาในช่วงต้นเสร็จสมบูรณ์
2.2. ใช้ข้อมูลในตารางเคียวรี mybatis
1. เพิ่มไฟล์การกำหนดค่า mybatis conf.xml
สร้างไฟล์ conf.xml ในไดเรกทอรี SRC ดังแสดงในรูปด้านล่าง:
เนื้อหาในไฟล์ conf.xml มีดังนี้:
<? .dtd "> <การกำหนดค่า> <environment default =" การพัฒนา "> <environment id =" การพัฒนา "> <TractionManager type =" JDBC " /<!-กำหนดค่าข้อมูลการเชื่อมต่อฐานข้อมูล-> <dataSource type =" pooled "> < ชื่อคุณสมบัติ = "ไดรเวอร์" value = "com.mysql.jdbc.driver"/> <ชื่อคุณสมบัติ = "url" value = "jdbc: mysql: // localhost:/mybatis"/> <ชื่อ ty ที่เหมาะสม = "ชื่อผู้ใช้" value = "root"/> <property name = "password" value = "xdp"/> </tataSource> </environment> </environments> </formation>
2. กำหนดคลาสทางกายภาพที่สอดคล้องกับตารางดังแสดงในรูปด้านล่าง:
รหัสของคลาสผู้ใช้มีดังนี้:
แพ็คเกจ me.gacl.domain; INT Private; .name = name;} public int getage () {return age;} public void setage (อายุ int) {this.age = age; " + อายุ +"] ";;}}
3. กำหนดไฟล์การแมป SQL ของตารางผู้ใช้ usermapper.xml
สร้างแพ็คเกจ me.gcl.mapping ใช้โดยเฉพาะเพื่อจัดเก็บไฟล์การแมป SQL สร้างไฟล์ usermapper.xml ในแพ็คเกจดังที่แสดงในรูปด้านล่าง:
เนื้อหาของไฟล์ usermapper.xml มีดังนี้:
<?
<!
<!- ระบุเนมสเปซที่ไม่ซ้ำกันสำหรับแผนที่นี้และค่าของเนมสเปซถูกตั้งค่าเป็นชื่อแพ็คเกจ+ชื่อไฟล์การแมป SQL เพื่อให้แน่ใจว่าค่าของเนมสเปซเป็นเพียงหนึ่งเดียว
ตัวอย่างเช่น namespace = "me.gacl.mapping.usermapper" คือ me.gacl.mapping (ชื่อแพ็คเกจ)+usermapper (usermapper.xml คำต่อท้ายลบไฟล์)))))))))))))))
-
<mapper namespace = "me.gacl.mapping.usermapper">
<!- การเขียนคำสั่ง Query SQL ในแท็กเลือกตั้งแอตทริบิวต์ ID ของแท็กเลือกเป็น getUser ค่าแอตทริบิวต์ ID จะต้องไม่ซ้ำกันและแอตทริบิวต์พารามิเตอร์สามารถใช้เพื่อระบุประเภทพารามิเตอร์ที่ใช้ระหว่างการสืบค้น .
resultType = "me.gacl.domain.user" หมายถึงการห่อหุ้มผลลัพธ์การสืบค้นลงในวัตถุของคลาสผู้ใช้เพื่อส่งคืน
คลาสผู้ใช้คือคลาสเอนทิตีที่สอดคล้องกับตารางผู้ใช้
-
-
การสอบถามวัตถุผู้ใช้
-
<select id = "getUser" parameterType = "int" resultSpe = "me.gacl.domain.user"> เลือก * จากผู้ใช้ที่ id =#{id} </mapper>
4. ลงทะเบียนไฟล์ usermapper.xml ในไฟล์ conf.xml
<? .dtd "> <การกำหนดค่า> <environment default =" การพัฒนา "> <environment id =" การพัฒนา "> <TractionManager type =" JDBC " /<!-กำหนดค่าข้อมูลการเชื่อมต่อฐานข้อมูล-> <dataSource type =" pooled "> < ชื่อคุณสมบัติ = "ไดรเวอร์" value = "com.mysql.jdbc.driver"/> <ชื่อคุณสมบัติ = "url" value = "jdbc: mysql: // localhost:/mybatis"/> <ชื่อ ty ที่เหมาะสม = "ชื่อผู้ใช้" value = "root"/> <property name = "password" value = "XDP"/> </tataSource> </environment> </environments> <mappers>- ลงทะเบียนไฟล์ XML แพ็คเกจของ me.gacl.mapping ดังนั้นทรัพยากรจึงถูกเขียนเป็น ME/GACL/Mapping/UserMapper.xml-> <mapper Resource = "ME/GACL/MAPPPIPER.XML"/> </mappers>
5. รหัสทดสอบเขียน: เลือกคำสั่งที่กำหนดไว้
สร้างคลาส test1 และเขียนรหัสทดสอบต่อไปนี้:
Package.gacl.test; .SQLSESSION; ตัวโหลดคลาสเพื่อโหลดไฟล์การกำหนดค่าของ MyBatis (ยังโหลดไฟล์การแมปที่เกี่ยวข้อง) อินพุต IS = Test.getClassLoader () // ใช้ทรัพยากรที่จัดทำโดย MyBatis Map File) // Reader Reader = Resources.getResourceAsreader (ทรัพยากร); ของ SQL สตริงตัวระบุ * me.gacl.mapping.usermapper เป็นค่าของคุณสมบัติเนมสเปซของแท็ก mapper ในไฟล์ usermapper.xml .gacl.mapping.usermapper.getUser "; // การแมปสตริงการระบุตัวตน SQL // ดำเนินการค้นหาเพื่อส่งคืนวัตถุผู้ใช้ที่ไม่ซ้ำผู้ใช้ผู้ใช้ = เซสชัน SESSICE.SEECTONE (คำสั่ง); System.out .println (ผู้ใช้);}}}}
ผลการดำเนินการมีดังนี้:
ดังที่เห็นได้จากรูปด้านบนบันทึกในฐานข้อมูลได้รับการสอบถามสำเร็จแล้ว
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้สำหรับการเรียนการเรียนรู้การเข้าเรียน mybatis (1) -mybatis เพื่อเริ่มต้นอย่างรวดเร็ว