ตัวอย่างโปรเจ็กต์ เช็คผลสอบ ตอนที่ 7 (นำข้อมูลไปแสดงผลจริง)

โปรเจ็กต์นี้เดินทางมาถึงตอนสุดท้ายแล้วนะคะ ใน ตอนที่แล้ว   เราได้สร้างเมธอด  getStudents() ขึ้นมา ทำหน้าที่ดึงข้อมูลในตาราง Students มาทั้งหมดเลย แต่โจทย์ของเราไม่ได้ต้องการข้อมูลแบบนี้

จากภาพนี้

Java-Basic-ง่ายนิดเดียว-Project-Check-Score-01

 

กระบวนการทำงานคือ ผู้ใช้จะกรอก “รหัสนักศึกษา” ลงไป กดปุ่ม “ตรวจผลสอบ” ถ้ามีข้อมูลนักศึกษาอยู่ ระบบจะดึงข้อมูลของนักศึกษาคนนั้นขึ้นมา ตาม “รหัสนักศึกษา” ที่กรอกลงไป

 

ความจริงโจทย์นี้ไม่ยากเลยค่ะ แค่เพิ่มคำสั่งในส่วนของภาษา SQL ให้ดึงเฉพาะข้อมูลที่มี “รหัสนักศึกษา” ที่กรอกลงไปขึ้นมาแสดงผลเท่านั้น

 

เราเพิ่มเมธอด getStudentByCode() ขึ้นมาค่ะ เมธอดนี้จะรับค่า “รหัสนักศึกษา” ไปให้คำสั่ง SQL นำไปประมวลผลด้วย และก็อีกเมธอดนึ่งใช้ในการปิดการเชื่อมต้อของฐานข้อมูล ชื่อ close() ลองอ่านโค้ดดูนะคะ

ในคลาส TestStudents.java เราทำการทดสอบโค้ดดังต่อไปนี้

เมื่อ Run ดู จะได้ผลลัพธ์ดังนี้

Java-Basic-ง่ายนิดเดียว-Project-Check-Score-07-01

 

ลองเปลี่ยน “รหัสนักศึกษา” ที่ส่งไปให้เป็นรหัสที่ไม่มีข้อมูลในตาราง Students บ้างนะคะ แล้วลอง Run ดูผลลัพธ์ด้วยตัวเองค่ะ อย่าลืมว่า การเขียนโปรแกรมที่ดี ต้องเขียนไปและทดสอบไปเสมอ และการทดสอบที่ดี ต้องทดสอบทั้งกรณีที่ถูกต้อง และกรณีที่ผิดพลาดควบคู่กันไป

 

มาถึงตอนนี้ก็ได้เวลาประยุกต์องค์ความรู้ทั้งหมดมาสร้างโปรเจ็กต์ของเราให้จบได้แล้วค่ะ

 

ทำการสร้าง JFrame ขึ้นมา 2 หน้าจอ โดยออกแบบหน้าจอตามลำดับดังต่อไปนี้ และตั้งชื่อตัวแปรต่าง ๆ ให้เรียบร้อยค่ะ

 

ExamJFrame.java

Java-Basic-ง่ายนิดเดียว-Project-Check-Score-07-02

ResultJFrame.java

Java-Basic-ง่ายนิดเดียว-Project-Check-Score-07-03.

เราจะเริ่มต้นเขียนโปรแกรมควบคุมปุ่มต่าง ๆ จากคลาส ExamJFrame.java ให้ดับเบิลคลิกที่ปุ่ม “ตรวจผลสอบ” แล้วเขียนโค้ดเหล่านี้ลงไป

 

จากนั้นสร้างเมธอด getDataByCode() ขึ้นมา โดยภายในเมธอดมีโค้ดในการเชื่อมต่อกับฐานข้อมูล กำหนดค่าให้ออบเจ็กต์ Students และสั่งเปิดหน้าใหม่ในกรณีที่มีข้อมูลตามที่ค้นหา

 

 

ต่อมาที่คลาส ResultJFrame.java ให้ทำการเปลี่ยนชื่อเมธอด main() เป็นเมธอด openResult() เพื่อใช้ในการเปิดหน้าจอผลการสอบขึ้นมา  (เปลี่ยนแค่ชื่อเมธอดนะคะ อย่างอื่นปล่อยไว้เหมือนเดิม)

Java-Basic-ง่ายนิดเดียว-Project-Check-Score-07-04

 

จากนั้นสร้างเมธอดชื่อ setData () ขึ้นมา หน้าที่ก็ตามชื่อที่ตั้งเลยค่ะ คือกำหนดค่าที่ได้มาจากออบเจ็กต์ประเภท Students ที่ดึงขึ้นมาจากตารางในฐานข้อมูล ค่าที่ได้มาถูกนำไปกำหนดค่าการแสดงผลก็ตอนนี้นี่แหละค่ะ

 

ยังไม่เสร็จนะคะ อย่าลืมเรียกใช้เมธอด setData () ในส่วนของ Constructor เมธอดด้วยล่ะ

 

โค้ดที่เพิ่มเข้าไปทั้งหมดก็มีแค่นี้แหละค่ะ มาทดสอบโปรแกรมกันเลยดีกว่า!!

สั่ง Run ที่คลาส ExamJFrame.java (คลาสนี้มีเมธอด main() ) เราจะได้ผลลัพธ์ดังภาพ

 

Java-Basic-ง่ายนิดเดียว-Project-Check-Score-01

 

กรณีกรอกข้อมูลรหัสนักศึกฯนถูกต้อง และกดที่ปุ่ม “ตรวจผลสอบ” เราจะได้ผลลัพธ์หน้าจอที่ 2

Java-Basic-ง่ายนิดเดียว-Project-Check-Score-02

ลองไล่กรอกข้อมูลแต่ละคนดูนะคะ กรณีไม่พบข้อมูลเราจะได้ผลลัพธ์จากคลาส JOptionPane อันนี้เราไม่ได้สร้างค่ะ Java มีให้เรียกใช้ได้เลย

Java-Basic-ง่ายนิดเดียว-Project-Check-Score-04

 

สรุป

จบไปแล้วนะคะสำหรับโปรเจ็กต์แรกของเรา ผู้เขียนรู้สึกว่าเป็นการอธิบายด้วยตัวหนังสือที่ยากเหลือเกิน ลองอ่านไปคร่าว ๆ ก่อนนะคะ ให้พอมีความรู้เบื้องต้นบ้างก็ยังดี ต่อไปรอพบกับเวอร์ชั่นวีดีโอกันดีกว่าค่ะ ^^

 


เรื่องที่เกี่ยวข้อง

NetBeans: วิธีสร้าง JFrame

NetBeans: ทำความรู้จัก Label กับ TextField

NetBeans: ทำความรู้จักกับ Button

ตัวอย่างโปรเจ็กต์: เช็คผลสอบ

ตอนที่ 1 (ภาพรวมของระบบ)

ตอนที่ 2 (ระบบฐานข้อมูล)

ตอนที่ 3 (เชื่อมต่อ Java กับ Database)

ตอนที่ 4 (สร้างออบเจ็กต์เก็บข้อมูล)

ตอนที่ 5 (ประมวลผลข้อมูล)

ตอนที่ 6 (ดึงข้อมูลจากตาราง)

ตอนที่ 7 (นำข้อมูลไปแสดงผลจริง)


 

ธมนวรรณ มณีจันทร์

ธมนวรรณ มณีจันทร์

|:- เราเชื่อมั่นว่าการเสียสละและการแบ่งปันจะทำให้โลกใบนี้สวยงามมากขึ้น ทุกๆ จุดเริ่มต้นของการเรียนรู้ นำไปสู่การเรียนรู้ถัดไป เว็บไซต์แห่งนี้ขอเป็นส่วนหนึ่งของการแบ่งปันความรู้ที่ไม่มีที่สิ้นสุด มาร่วมกันผลักดันโลกของเราให้หมุนไปพร้อมกับพลังแห่งความรักด้วยกันนะคะ :) >>> |:- About Me! -:|