วันอาทิตย์ที่ 13 เมษายน พ.ศ. 2557

คึกอยากจะทบทวน GWT Framework part 7-1

Sample GWT Picture

: Remote Procedure Calls (RPC) Code Example

จาก part ที่ 6 ที่ผ่านมาเราเรียนรู้แนวคิดของ RPC ไปแล้ว ตอนนี้เราก็จะเขียนโค้ดตัวอย่างเพื่อ implement แนวคิดดังกล่าวครับ

1) สร้างคลาส Product เป็น bean เก็บไว้ที่ package ชื่อ
com.sample.shred
ประกอบด้วย String name และ double price

2) สร้างตัว remote interface จากแนวคิด RPC ให้ชื่อว่า ProductService เก็บไว้ที่ package ชื่อ
com.sample.client
เขียนบริการ getProducts เพื่อขอสินค้าทั้งหมดจาก database

3) สร้าง Async (Asynchronous) interface จากแนวคิด RPC จึงชื่อว่า ProductServiceAsync เก็บไว้ที่ package ชื่อ
com.sample.client
interface นี้จะบังคับผลลัพธ์เป็น Asynchronous Callback เสมอ หมายความง่ายๆว่า ทำงานเสร็จเมื่อไรเดี๋ยวส่งผลลัพธ์กลับมาเอง ไม่ต้องคอยเค้านะจ๊ะ (ผลลัพธ์ของการ callback มีสองแบบคือ onSuccess กับ onFailure) ประมาณนั้น (เราจึงไปทำงานอื่นต่อได้ไงล่ะ)

เอาละครับฝั่ง client เตรียมเสร็จเรียบร้อย (shred คือถูกคอมไพล์ได้ทั้งสองฝั่ง) ต่อไปก็เตรียมฝั่ง server กันบ้าง

4) สร้างคลาส ที่รับเอากติกาของ ProductService มาใช้ เพื่อที่มันจะได้รู้จักคำร้องขอจากฝั่ง client คำร้องขอที่ว่าคือ getProducts นั่นเอง โดยตั้งชื่อตามแนวคิว RPC ว่า ProductServiceImpl
ที่คลาสนี้เราจะสร้างข้อมูลปลอมๆขึ้นมาก่อน (ยังไม่ต่อฐานข้อมูลจริงๆนะ มันเยอะ) แล้วก็ return กลับไปให้ฝั่ง client

ทีนี้พอ client ร้องขอ getProducts จาก server ผลลัพธ์ที่ได้จึงมีสองแบบคือ
- ได้ผลลัพธ์ onSuccess
- หรือล้มเหลว onFailure

เท่านี้ก่อนครับ ไว้ต่อ part 7-2

ไม่มีความคิดเห็น:

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