รู้เบื้องต้นเกี่ยวกับ MyBatis:
MyBatis เป็นเฟรมเวิร์กเลเยอร์การคงอยู่ที่ยอดเยี่ยมที่รองรับการสืบค้น SQL แบบธรรมดาขั้นตอนที่เก็บไว้และการทำแผนที่ขั้นสูง MyBatis กำจัดการตั้งค่าด้วยตนเองของรหัส JDBC เกือบทั้งหมดและพารามิเตอร์และการค้นหาการห่อหุ้มของชุดผลลัพธ์ MyBatis สามารถใช้ XML อย่างง่ายหรือคำอธิบายประกอบสำหรับการกำหนดค่าและการแมปดั้งเดิมการแมปอินเทอร์เฟซและ pojos ของ Java (วัตถุ Java เก่าธรรมดา) ลงในบันทึกในฐานข้อมูล
การอ่านที่เกี่ยวข้อง: mybatis บทนำการเรียนรู้การเรียนรู้ (i) - mybatis เริ่มต้นอย่างรวดเร็ว
นักเรียนที่ใช้ mybatis รู้ว่าสำหรับแต่ละโครงการพวกเขาจำเป็นต้องสร้างตารางฐานข้อมูลที่เกี่ยวข้องที่ใช้ในฐานข้อมูลเพิ่มลบแก้ไขและตรวจสอบไฟล์ xxxmapper.xml ไฟล์เอนทิตี xxx.java และคลาสอื่น ๆ ที่ใช้เรียกไฟล์ XXXMAPPER.JAVA เมื่อฉันเริ่มเรียนรู้ mybatis ฉันเชื่อว่าหลายคนสร้างไฟล์เหล่านี้ด้วยตนเอง ไม่ต้องสงสัยเลยว่าหากโครงการมีขนาดใหญ่ขึ้นก็ไม่มีประสิทธิภาพมากที่จะสร้างไฟล์เหล่านี้ด้วยตนเอง ในเวลานี้เราสามารถสร้างไฟล์เหล่านี้ผ่าน MyBatis-Generator โดยอัตโนมัติ อย่างไรก็ตามเครื่องมือนี้สร้างไฟล์ที่เกี่ยวข้องในรูปแบบของบรรทัดคำสั่งโดยค่าเริ่มต้นดังนั้นเราจึงสามารถเขียนสคริปต์มด ทุกครั้งที่เราจำเป็นต้องสร้างไฟล์เหล่านี้เราสามารถสร้างสคริปต์มดใน Eclipse โดยอัตโนมัติ ขั้นตอนที่สมบูรณ์มีดังนี้:
นำเข้าแพ็คเกจขวดที่เกี่ยวข้อง
ในการใช้ "mybatis-generator" คุณต้องนำเข้าไฟล์ mybatis-generator-1.3.x.jar ที่เกี่ยวข้องใน Lib ของโครงการเว็บ ที่อยู่ดาวน์โหลดบน GitHub: ดาวน์โหลดแพ็คเกจ Jar ของ MyBatis-Generator
ประการที่สองกำหนดค่าไฟล์กำหนดค่าสำหรับ mybatis-generator
(1) ก่อนอื่นให้สร้างแพ็คเกจใหม่หลายฉบับในโครงการเพื่อจัดเก็บไฟล์ที่เกี่ยวข้อง:
ดังที่เห็นได้จากรูปด้านบน SRC/Main/Java ใช้ในการจัดเก็บซอร์สโค้ด Java SRC/Main/env/dev ใช้เพื่อจัดเก็บไฟล์การกำหนดค่าในสภาพแวดล้อมการพัฒนา (เช่น: JDBC, แคช, บันทึก ฯลฯ ); SRC/Main/Resources ใช้เพื่อจัดเก็บไฟล์การกำหนดค่าทั่วไปบางไฟล์โดยที่ไฟล์ mapper.xml ที่เราสร้างโดยอัตโนมัติจะถูกเก็บไว้ในเส้นทางนี้ SRC/Test/Java แสดงถึงรหัสทดสอบและไม่สำคัญที่นี่
หมายเหตุ: จะเพิ่มโฟลเดอร์ต้นทางเหล่านี้ใน Eclipse ได้อย่างไร?
(2) สร้าง GeneratorConfig.xml และ build_mybatis.xml ในไดเรกทอรีรากของโครงการ:
ไฟล์ทั้งสองนี้เป็นไฟล์กำหนดค่าของ "mybatis-generator" และสคริปต์มดอัตโนมัติ เส้นทางในโครงการมีดังนี้:
i) GeneratorConfig.xml:
<? xml version = "1.0" encoding = "utf-8" 1.0 // en "" http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd "> <seneratorconfiguration> <!-ไดรเวอร์ฐานข้อมูล-> <classpathentrylocation =" webcontent/web-inf/lib/mysql-connt5 id = "db2tables" targetRuntime = "myBatis3"> <ความคิดเห็นเจนเนอเรเตอร์> <property name = "suppressAllComments" value = "true" /> <!-ไม่ว่าจะเป็นการเขียนแบบไม่ว่า driverclass = "com.mysql.jdbc.driver" connectionurl = "jdbc: mysql: //127.0.0.1: 3306/ehcache_db" userId = "root" password = "root"> </jdbcconnection> <! หากฟิลด์มีความแม่นยำมากกว่า 0 ให้สร้าง bigdecimal หากสนามมีความแม่นยำความยาวทั้งหมดคือ 10-18 สร้างความยาว หากฟิลด์มีความแม่นยำความยาวทั้งหมดคือ 5-9 สร้างจำนวนเต็ม หากสนามมีความแม่นยำความยาวทั้งหมดจะน้อยกว่า 5 สร้างสั้น หาก forceBigdecimals เป็นจริงให้สร้าง bigdecimal อย่างสม่ำเสมอ-> <javatyperesolver> <!-ไม่ว่าจะใช้ bigdecimal, False สามารถแปลงประเภทต่อไปนี้โดยอัตโนมัติ ไฟล์-> <javamodelGenerator targetPackage = "cn.zifangsky.model" targetProject = "src/main/java"> <!-enablesubpackages: ไม่ว่าจะใช้ schema เป็นคำต่อท้ายของแพ็คเกจ-> <คุณสมบัติ name = "trimstrings" value = "true"/> </javamodelGenerator> <!-สร้างไฟล์ mapper.xml-> <sqlmapgenerator targetPackage = "sqlmaps" targetProject = "src/main/resources"> <! /> </sqlmapgenerator> <!-สร้างไฟล์ mapper.java, เช่นเลเยอร์ dao-> <javaclientgenerator type = "xmlmapper" targetPackage = "cn.zifangsky.mapper" TregaleProject = "SRC/Main/Java" /> </javaclientGenerator> <!-ในการสร้างชื่อตารางในฐานข้อมูลที่จะสร้างขึ้นเพื่อสร้างไฟล์ Java และ XML ที่สอดคล้องกับตารางคุณต้องกำหนดค่าส่วน-> <table tablename = "ผู้ใช้" domainobjectName = "ผู้ใช้" enableCountByExample = ENABLESELECTBYEXAMPLE = "FALSE" SELECTBYEXAMPLEQUARYID = "FALSE"> </TabLE> </บริบท> </generatorConfiguration>
หมายเหตุ: สถานที่บางแห่งที่ต้องแก้ไขสามารถแก้ไขได้ตามความคิดเห็นของฉันข้างต้น อย่าลืมแพ็คเกจ Jar ที่ขับเคลื่อนด้วยข้อมูล
ii) build_mybatis.xml:
<project default = "genFiles" basedir = "."> <property name = "generated.source.dir" value = "$ {basedir}"/> <path id = "ant.run.lib.path"> <สถานที่ที่น่าสมเพช = "$ {basedir} /webcontent/web-in name = "genFiles" คำอธิบาย = "สร้างไฟล์"> <taskDef name = "MBGenerator" className = "org.mybatis.generator.ant.generatorantTask" classPathRef = "ant.run.lib.path"/> <mbgenerator name = "generated.source.dir"/> </propertyset> </mbgenerator> </sourcมีสองสิ่งที่ควรทราบในรหัสด้านบน: หนึ่งคือแพ็คเกจ jar ของ "mybatis-generator" และอีกอันคือไฟล์ "generatorconfig.xml" ที่สอดคล้องกัน
หมายเหตุ: หากคุณไม่คุ้นเคยกับสคริปต์มดคุณสามารถอ้างอิงบทความที่ฉันเขียน: //www.vevb.com/article/87674.htm
สามการทดสอบ
เมื่อทำการทดสอบเอฟเฟกต์คุณจะต้องลากไฟล์ "build_mybatis.xml" ลงในมุมมอง ANT จากนั้นคลิกเพื่อเรียกใช้สคริปต์นี้เพื่อสร้างไฟล์ที่เราต้องการโดยอัตโนมัติ ในที่สุดรีเฟรชโครงสร้างโครงการและคุณสามารถดูไฟล์ได้ เอฟเฟกต์มีดังนี้:
หมายเหตุ: ข้อมูลฐานข้อมูลที่ฉันใช้ในการทดสอบ:
SET FANRABING_KEY_CHECKS = 0;----------------------------------- โครงสร้างตารางสำหรับผู้ใช้----------------------------- TABLE ถ้ามีอยู่ `ผู้ใช้ 'สร้างตาราง` ผู้ใช้' (`ID` int (11) ไม่ใช่ค่าเริ่มต้น null (null-null-null null, คีย์หลัก (`id`)) เครื่องยนต์ = innoDB auto_increment = 4 charset เริ่มต้น = utf8;----------------------------------- บันทึกของผู้ใช้------------------------- ใส่ค่า` user '(' 1 ',' admin ',' 123456 ',' 'ทดสอบ', '1234', '[email protected]', '1990-12-12'); แทรกลงในค่า `ผู้ใช้ '(' 3 ',' xxxx ',' xx ',' [email protected] ',' 1723-06-21 ');ด้านบนเป็นวิธีการใช้เครื่องกำเนิด mybatis เพื่อสร้างรุ่น MAPPER และไฟล์อื่น ๆ ที่ตัวแก้ไขแนะนำให้คุณ ฉันหวังว่ามันจะเป็นประโยชน์กับคุณ หากคุณมีคำถามใด ๆ โปรดฝากข้อความถึงฉันและบรรณาธิการจะตอบกลับคุณทันเวลา ขอบคุณมากสำหรับการสนับสนุนเว็บไซต์ Wulin.com!