คลังบทความของบล็อก

วันอาทิตย์ที่ 20 มิถุนายน พ.ศ. 2553

Lesson 7 : : ฝึกงานวันที่สิบ สรุป Screen Form Entity Service


อธิบายหลักการทำงาน ของ Ofbiz จากภาพ
จากภาพจะเห็นว่า ลักษณะการทำงานของ Ofbiz จะเป็นในลักษณะ MVC คือ Model View Controller
1. entitymodel.xml (.../entitydef/entitymodel.xml)
ส่วนนี้จะเป็นส่วนสร้างตารางต่างๆ เป็นรูปแบบ MVC ในส่วนของ Model โดยจะดึงคำอธิบายภาษาไว้ตรง default-resource-name="language"> language คือ ชื่อไฟล์ที่เก็บคำธิบายตารางนั่นเอง






  







2. language.xml (.../config/language.xml)
ส่วนนี้จะเป็นส่วนเก็บคำอธิบายตาราง โดยอธิบายทีละฟิลด์ <property key="FieldDescription.ชื่อตาราง.ชื่อฟิลด์">


blogId55


3. myService.xml (.../script/com/ชื่อเรา/ชื่อโปรเจค/blog/myServices.xml)
ส่วนนี้จะเอาไว้เก็บการทำงานของ simple-method insert update delete ของ Service เพื่อเรียกใช้ตารางใน entitymodel.xml ผ่าน entity-name="ชื่อตารางใน entitymodel.xml"

4. service.xml (.../freemarker/servicedef/service.xml)
ส่วนนี้จะเอาไว้เรียกใช้การทำงานของ simple-methodใน myService.xml โดยเรียกผ่าน location="ที่อยู่ myServices" invoke="ชื่อ simple-method"

5. controller.xml (.../webapp/ชื่อโปรเจค/WEB-INF/controller.xml)
ส่วนนี้
เป็นรูปแบบ MVC ในส่วนของ Controller ซึ่งหน้าจอทุกหน้าจอ จะทำงาน หรือเรียกใช้ผ่าน controller.xml โดยจะเข้าไปเรียก request-map ว่ามีหน้าจอที่กำลังเรียกอยู่หรือไม่ และส่วนนี้สามารถเรียกใช้ service ต่างๆได้ อีกด้วย ถ้ามีชื่อหน้าจอใน request-map ค่าก็จะเรียกต่อไปยัง view-map เพื่อสามารถไปจัดการส่วนของ Screens ต่อไป

6. screens.xml (.../widget/screens.xml)
ส่วนนี้เปรียบเสมือนการเรียกรูปแบบต่างๆ เพื่อนำมาแสดงผลออกบนหน้าจอ โดยสามารถเรียกใช้หน้าจอได้โดยตรงผ่าน screens หรือ เรียกใช้ forms ต่างๆ ก็ได้ อีกทั้งยังสามารถ เพิ่มส่วนของ template ตามที่เรากำหนดได้อีกด้วย ที่ชื่อ decorator

7. forms.xml (.../widget/forms.xml)
ส่วนของ forms จะเป็นรูปแบบ ของหน้าจอต่างๆ แล้ว target ของ form จะนำรูปแบบฟอร์มที่ต้องการไปแสดงผลที่หน้า controller ในส่วนของ request-map

8. commonScreens.xml (.../widget/commonScreens.xml)
จัดการในส่วนของรูปแบบ template นั่นเอง เพื่อให้หน้า screens สามารถนำไปเรียกใช้ได้

10. index.ftl (...
/webapp/ชื่อโปรเจค/หรือในโฟลเดอร์ที่เราต้องการ)
ส่วนนี้เป็น รูปแบบ MVC ในส่วนของ View หรือส่วนแสดงผลที่เราคุ้นเคยนั่นเอง

อีกหน้าที่สำคัญก็คือ web.xml (.../ชื่อโปรเจค/WEB-INF/web.xml)
จะเป็นส่วนทำ allowedPaths เช่นกรณีต้องการเพิ่มโฟลเดอร์ใหม่ใน โปรเจคของเรา ควรที่จะมาเพิ่มในหน้า web.xml ด้วย หรือแม้แต่ชื่อ style sheet ต่างๆ ก็ต้องเพิ่มเข้าไปด้วย และยังสามารถจัดการ url ของเว็บ ในส่วนของ welcom-file-list ว่าต้องการให้เรียกหน้าเว็บผ่านอะไร เช่น /control/index เป็นต้น

0 ความคิดเห็น:

แสดงความคิดเห็น