เมื่อเร็ว ๆ นี้เพื่อนคนหนึ่งถามฉันว่า mybatis มีฟังก์ชั่นของการสร้างโครงสร้างตารางโดยอัตโนมัติหรือไม่เพราะพวกเขาเคยใช้ในการใช้ไฮเบอร์เนตมาก่อน โดยธรรมชาติแล้วพวกเขาเชื่อว่าโดยการกำหนดค่าการเดิมพันหรือการเขียนไฟล์การแมปในคลาสเอนทิตีตารางสามารถสร้างได้โดยอัตโนมัติหลังจากระบบเริ่มต้น
ฉันสามารถบอกเขาได้ด้วยความเสียใจที่ mybatis ไม่มีฟังก์ชั่นนี้ เมื่อเห็นความเฉยเมยของเขาฉันสามารถปลอบโยนเขาได้เท่านั้นแม้ว่าจะไม่มีฟังก์ชั่นดังกล่าวเราสามารถพัฒนามันเองได้ ~~
ดังนั้นจึงมีระบบต่อไปนี้ซึ่งเปิดออกและคุณสามารถลงมาและดู ~~
mybatis_buildtable_v0.2
https://git.oschina.net/sunchenbin/mybatis_buildtable_v0.2.git
สถาปัตยกรรมโครงการใช้ SpringMVC+MyBatis+Maven คุณลักษณะคือการสร้างตารางและแก้ไขโครงสร้างตารางโดยการกำหนดค่าคำอธิบายประกอบแบบจำลอง ปัจจุบันรองรับ MySQL เท่านั้น เนื่องจากโฟกัสคือการเน้นฟังก์ชั่นของการสร้างตารางอัตโนมัติ mybatis ดังนั้นจึงไม่จำเป็นต้องคิดมากเกี่ยวกับกรอบงานมากเกินไป
ข้อมูลจำเพาะการใช้งาน:
รหัสหลักอยู่ในร้านค้าแบบจำลอง
1. วัตถุ sysmysqlcolumns.java ได้รับการกำหนดค่าด้วยประเภทข้อมูล MySQL ยิ่งมีการกำหนดค่าประเภทที่นี่มากเท่าไหร่คุณก็สามารถใช้ประเภทได้มากขึ้นเมื่อสร้างตาราง
2.LengthCount.java เป็นคำอธิบายประกอบที่กำหนดเองที่ใช้เพื่อทำเครื่องหมายชนิดข้อมูลที่กำหนดค่าใน sysmysqlcolumns.java ในการทำเครื่องหมายประเภทนี้ต้องใช้ความยาวหลายอย่างเช่น DateTime/Varchar (1)/ทศนิยม (5,2) ตามลำดับ 0, 1, 2 ตามลำดับ
3.Column.java ยังเป็นคำอธิบายประกอบที่กำหนดเองซึ่งใช้ทำเครื่องหมายฟิลด์ในโมเดล เป็นพื้นฐานสำหรับการสร้างตารางหากไม่ได้ทำเครื่องหมายจะไม่สแกน มีคุณลักษณะหลายอย่างที่ใช้ในการตั้งค่าการตั้งค่าคุณสมบัติเช่นชื่อฟิลด์ประเภทฟิลด์ความยาว ฯลฯ สำหรับรายละเอียดโปรดดูความคิดเห็นเกี่ยวกับรหัส
4.Table.java ยังเป็นคำอธิบายประกอบที่กำหนดเองใช้ทำเครื่องหมายวัตถุโมเดลและมีชื่อแอตทริบิวต์ซึ่งใช้ในการตั้งชื่อตารางหลังจากรุ่นสร้างตาราง หากไม่ได้ตั้งค่าคำอธิบายประกอบโมเดลจะไม่ถูกสแกน
ตกลงหลังจากระบบเริ่มต้นจะเรียกเมธอด createMySqlTable () โดยอัตโนมัติของ sysmysqlcreateTeTableManagerImpl.java ถูกต้องนี่คือวิธีการหลักซึ่งรับผิดชอบในการสร้างการลบและแก้ไขตาราง
โมเดลร้านค้าหน้า/ทรัพยากร/config/autocreatetable.properties
คุณจะพบว่ามีไฟล์กำหนดค่าซึ่งมีสองการกำหนดค่า
1.MyBatis.table.auto = อัปเดต
2.MyBatis.model.pack = com.sunchenbin.store.model
ระบบนี้มีสองโหมด:
1. เมื่อ mybatis.table.auto = สร้างหลังจากระบบเริ่มต้นตารางทั้งหมดจะถูกลบและจากนั้นตารางจะถูกสร้างขึ้นมาใหม่ตามโครงสร้างที่กำหนดค่าในโมเดล การดำเนินการนี้จะทำลายข้อมูลต้นฉบับ
2. เมื่อ mybatis.table.auto = update ระบบจะพิจารณาโดยอัตโนมัติว่าตารางใดที่สร้างขึ้นใหม่ซึ่งจะต้องมีการแก้ไขฟิลด์ใดในประเภทซึ่งจะต้องลบฟิลด์ใดและจำเป็นต้องเพิ่มฟิลด์ใด การดำเนินการนี้จะไม่ทำลายข้อมูลดั้งเดิม
3.MyBatis.model.pack การกำหนดค่านี้ใช้เพื่อกำหนดค่าชื่อแพ็คเกจของวัตถุที่จะสแกนเพื่อสร้างตาราง
ระบบได้รับการกำหนดค่าให้เริ่มใช้ Maven เว็บขึ้นอยู่กับ repo, frontend และมือถือขึ้นอยู่กับเว็บ ดังนั้นในการเรียกใช้ส่วนหน้าและมือถือคุณต้องติดตั้งเว็บและ repo ก่อน
สำหรับวิธีการเริ่มต้นโครงการด้วย Maven ... ฉันจะไม่พูดมากกว่านี้
ข้างต้นเป็นคำอธิบายแบบเต็มของ MyBatis โดยอัตโนมัติการสร้างตารางและโครงสร้างตารางอัปเดตแนะนำให้คุณทราบโดยตัวแก้ไข ฉันหวังว่ามันจะเป็นประโยชน์กับคุณ หากคุณมีคำถามใด ๆ โปรดฝากข้อความถึงฉันและบรรณาธิการจะตอบกลับคุณทันเวลา ขอบคุณมากสำหรับการสนับสนุนเว็บไซต์ Wulin.com!