เริ่มเบื่อ Hello world แล้วก็ bookstore แล้ว ลองอย่างอื่นทำดีกว่า คราวนี้ลองมาเขียนโปรแกรมติดต่อฐานข้อมูลดีกว่า จะได้ดูดีขึ้นมาหน่อย ตัวอย่างที่เหมาะกับเรื่องนี้ก็คือ Web board หวังว่าคงเคยใช้งานกันมาบ้าง อารมณ์เหมือน Post บน Facebook แล้วมีคนมา comment
สิ่งที่จำเป็นในบทความนี้คือ
- ทำขั้นตอนติดตั้ง Project ให้ผ่านก่อน เพื่อที่จะได้นำเอาโครงสร้าง Project นั้นมาใช้งานต่อ
- ติดตั้ง MySQL 5.5 (เวอร์ชันล่าสุดตอนที่เขียนบทความนี้) และดาวโหลด Driver MySQL มาด้วย (Connector/J 5.1) หรือหากใครมีความสามารถที่จะใช้ของเจ้าอื่นและเขียนติดต่อกับฐานข้อมูลเป็นก็สามารถใช้แทนกันได้
Step เตรียมพร้อม
- สร้าง Dynamic Web Project โดยเลือกเมนู File -> New -> Project… แล้วพิมพ์ Dynamic ก็จะขึ้นมาให้เลือก
- ตั้งชื่อ Project ว่า webboard แล้วกด Next สองที แล้วทำเครื่องหมายถูกหน้าคำว่า Generate web.xml deployment descriptor แล้วกด Finish
- ไปที่ Project bookstore ให้ทำการ copy ไฟล์ทั้งหมดใน WEB-INF/lib มาไว้ที่ Project webboard ตำแหน่งเดียวกัน
- Copy ไฟล์ web.xml ของ Project bookstore มาไว้ที่ Project webboard (ถ้ามี dialog ถามว่าให้ทับไฟล์เดิมหรือเปล่าให้ตอบ Yes ถ้าไม่มีแสดงว่าวางผิดตำแหน่ง)
- Copy ไฟล์ struts.xml และ example.xml ที่ตำแหน่ง src ของ Project bookstore มาไว้ที่ src ของ Project webboard
- Copy ไฟล์ index.html ที่ตำแหน่ง WebContent ของ Project bookstore มาไว้ที่ WebContent ของ Project webboard
จบพิธีการเตรียม Project เพื่อเตรียมให้รัน Struts 2 ได้
ตรวจสอบให้ดีว่าไฟล์ครบดังรูปหรือไม่ (อย่าลืมปรับ Perspective ให้เป็น Java นะ จะได้เหมือนกัน)

ลงมือเขียน
- เปลี่ยนชื่อไฟล์ example.xml เป็น webboard.xml โดยการคลิกสองครั้งหรือ คลิกขวาที่ไฟล์แล้วเลือก Refactor -> Rename…
- เปิดไฟล์ webbord.xml ที่ได้จากขั้นตอนที่ 7) ขึ้นมา แล้วหาบรรทัดนี้
<package name="example" namespace="/example" extends="default">
ให้เปลี่ยนคำว่า exampleเป็น webboardแล้วกดบันทึก
แล้วลบ Tag ที่อยู่ข้างใน tag packageให้หมดก็จะได้ไฟล์หน้าตาดังนี้
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <package name="webboard" namespace="/webboard" extends="default"> </package> </struts> - เปิดไฟล์ struts.xml หา tag นี้แล้วลบข้างใน tag ออก
<action name="index"> <result type="redirectAction"> <param name="actionName">HelloWorld</param> <param name="namespace">/example</param> </result> </action>
แก้ให้เป็น
<action name="index"> <result>/main.jsp</result> </action>
และเปลี่ยนค่าของ Tag
<include file="example.xml"/>
เป็น
<include file="webboard.xml"/>
- สร้างไฟล์ main.jsp ไว้ที่ WebContent เปิดไฟล์นี้ขึ้นมาแล้วพิมพ์
Hello World!
ไว้ข้างใน Tag body
- เปิดไฟล์ index.html แล้วแก้
<META HTTP-EQUIV="Refresh" CONTENT="0;URL=example/HelloWorld.action">
ให้เป็น
<META HTTP-EQUIV="Refresh" CONTENT="0;URL=webboard/index.action">
- คลิกขวาที่ไฟล์ index.html เลือก Run As -> Run on Server ถ้าพบหน้าจอดังรูปแสดงว่า การ Setup Struts 2 ได้แล้ว
ถ้าหากไม่ขึ้นดังนี้ ข้อแสดงความเสียใจด้วย เพราะว่าต้องเริ่มทำใหม่ตั้งแต่ต้น
ปล. หากทำตามแล้วไม่ผ่าน
- ให้โหลดไฟล์นี้ http://www.4shared.com/file/vt1daoAt/webboard_ch1.html
- ไปที่ Eclipse แล้วเลือกเมนู File -> Import… แล้วเลือก General -> Existing Projects into Workspace
- เลือกรายการ Select archive file: แล้วชี้ไปที่ตำแหน่งที่ดาวโหลดมา แล้วกดปุ่ม finish ที่เหลือก็แก้ Config เรื่อง JDK และ Tomcat ก็ผ่านจะผ่านแล้ว
หรือจะเลือก New Dynamic Web Project จากนั้นแตก zip แล้วก็อปไฟล์ไปวาง
Pingback: Struts Framework 2 – ตัวอย่าง Application ตอนที่ 2 « MagicKiat's Weblog