Dynamic Block ของ iBatis ภาคขยายครับ

Posted January 25, 2009 at Spring66
เขียนภาคสามเสร็จแล้วแต่พอดีเหลือบไปเห็นคำถามเรื่อง Dynamic Block ของ iBatis ครับเลยเขียนตอบเป็นเรื่องเป็นราวเลยละกันครับ จริงๆตัวผมเองถึงแม้จะใช้ iBaits มานานสักระยะแต่ก็ไม่เคยใช้ Dynamic Block เลยเพราะขี้เกียจทั้งๆที่จริงๆแล้ว iBator เค้าก็สร้างออก มาให้ตลอดนะ ผมก็ลบทิ้งเช็ด จนช่วงปีหลังนี่แหละผมได้แนะนำน้องที่รู้จักกันให้ใช้ iBatis เพราะงานของน้องเค้าคือต้องเขียน Application ครอบฐานข้อมูลเดิมที่ถูกออกแบบไว้แล้วโดย DBA ดังนั้นให้ใช้ Hibernate ท่าจะแย่เลยเพราะคงต้องรื้ออะไรบางอย่างหวยเลยออก iBatis ซะ อยู่มาวันหนึ่งก็เอา code น้องมาดู “เอ้ยมันทำแบบนี้ได้ด้วยหรอ” นั่นแหละถึงเห็นว่า Dynamic Block หรือ Example Class ให้อย่างไร ติ๊ต่างว่าเราใช้ตารางเดิมครับที่มี Schema ดังนี้ CREATE TABLE /*!32312 IF NOT EXISTS*/ `users` ( `USR_ID` tinyint(3) unsigned NOT NULL DEFAULT '0', `USR_NAME` varchar(50) NOT [...]