Generate Getter and Setter By Eclipse

JavaBean

ในการเขียน JSP สำหรับระบบใหญ่ ๆ  นักพัฒนาจะไม่นิยมใส่ java code ลงไปในไฟล์ JSP มากนัก สิ่งที่อยู่ในไฟล์มักจะเป็นเพียง HTML code และค่าของ variables ต่าง ๆ ที่ได้มาจาก JavaBeans เท่านั้น. ข้อดีของการใช้ JavaBean คือการง่ายต่อการเปลี่ยนแปลงลักษณะของ look-and-feel ของไฟล์ JSP ที่เป็นเช่นนี้เพราะ ส่วนที่เป็น data (variables) กับส่วนที่เป็น presentation (HTML) จะอยู่ด้วยกันอย่างหลวม ๆ ดังนี้เราจึงสามารถเปลี่ยนตัว presentation เมื่อไหร่ก็ได้ โดยตัว JavaBean ที่ใช้เก็บค่าของ variables ต่าง ๆ ยังคงเหมือนเดิม

สำหรับคนที่ไม่คุ้นกับ JavaBean ให้นึกถึง JavaBean เป็นลักษณะของกล่อง โดยกล่องนี้มีส่วนที่ใช้ติดต่อกับโลกภายนอกอยู่สองส่วนหลัก ๆ คือ

1. ส่วนที่ใช้สำหรับรับข้อมูลต่าง ๆ โดยข้อมูลเหล่านี้จะถูกใช้เป็นตัวแปรในการควบคุมหรือเปลี่ยนแปลงคุณสมบัติและการทำงานของกล่อง (Setter)
2. ส่วนที่ใช้สำหรับอ่านคุณสมบัติของกล่อง (Getter) ซึ่งโดยส่วนมาก(แต่ไม่ทั้งหมด) ก็คือค่าของตัวแปรต่าง ๆ ที่บรรจุอยู่ในกล่อง

ในการใช้งานกล่อง (JavaBean) ดังกล่าวร่วมกับ JSP เราสามารถที่จะสร้างกล่องขึ้นมาโดยใช้ <jsp:useBean …/>, ส่งค่าเข้าไปในกล่องโดยใช้ <jsp:setProperty …/> และอ่านค่าต่าง ๆ ที่อยู่ในกล่อง โดยใช้ <jsp:getProperty …/> tag แต่ก่อนที่เราจะเรียนรู้ถึงการใช้ tag เหล่านี้ เรามาพูดถึง JavaBean ในรายละเอียดอีกซักเล็กน้อยเสียก่อน

ที่มา : http://www.jarticles.com/jsp/actions.html

เรื่องมันมีอยู่ว่า…

หลังจากที่ได้รับมอบหมายให้เขียนโปรแกรมในส่วนของ Bean ออฟก็เปิด Eclipse แล้วนั่งพิมพ์จนเสจผลปรากฏว่า

1. เสีัยเวลาประมาณเกือบชั่วโมง ในการพิมพ์ (ต้องเขียนทั้งหมดประมาณ 10 ไฟล์ และแต่ละไฟล์มีฟังก์ชั่นประมาณ 5-10 ฟังก์ชั่น)

2. มีบางฟังก์ชั่นพิมพ์ get กับ set สลับกัน

3. พิมพ์ไม่ครบด้วยความเบลอๆๆ

จะเห็นได้ว่าเกิดความเน่าๆ ขึ้นมากมาย แล้วพอมาบ่นๆกับเพื่อน ๆเลยได้ตัวช่วยที่ง่ายมากๆมา (แล้วทำไมไม่บอกตั้งแต่แรกก็ไม่รู้อะ = =)

ขั้นตอนง่ายๆ ในการสร้าง

1. หลังจากที่สร้างตัวแปรทีต้องการใช้งานเสร็จแล้ว

2. ให้คลิกขวาเลือก Source > Generate Getters and Setters

GetterandSetter_1.jpg

3. เลือกว่าต้องการจะสร้างของอันไหนบ้าง แล้วกด OK

GetterandSetter_2.jpg

4. ผลที่ได้ถูกต้องและรวดเร็ว

GetterandSetter_3.jpg

คำคมวันนี้ : “รู้ช้าดีกว่าไม่รู้”

Leave a comment