วันจันทร์ที่ 13 กันยายน พ.ศ. 2553

บล็อกของคำสั่งเจเอสพี

ในบทนี้คุณจะได้เรียนรู้วิธีการสร้างไฟล์ .jsp เพื่อใช้สร้างโฮมเพจของคุณด้วยการเขียนไฟล์
.jsp ไฟล์แรกในชีวิต ไฟล์นี้มีความสามารถพิเศษคือการนับจำนวนผู้ที่เคยเข้าเยี่ยมชมตัวมัน
เองได้
การสร้างไฟล์ .jsp
การสร้างไฟล์ .jsp ทั่วไปเริ่มจากการใช้ Notepad ในการสร้าง ตอนนี้ให้คุณสร้างไฟล์ชื่อ
counter01.jsp แล้วพิมพ์ข้อความต่อไปนี้ลงไป

ผลที่ได้ควรจะเป็นดังนี้


ถ้าลองรีเฟรชเบราเซอร์ดูหลายๆ ครั้ง จะเห็นได้ว่าหมายเลขผู้เยี่ยมชมเพิ่มขึ้นได้เองทีละ
หนึ่ง การรีเฟรชเปรียบได้กับการร้องขอโฮมเพจหน้านี้ซ้ำใหม่


บล็อกเจเอสพี

เราทราบแล้วว่าบล็อกของคำสั่งเจเอสพีล้อมรอบด้วยเครื่องหมาย <% และ %> ที่จริงแล้ว
บล็อกเจเอสพียังแบ่งออกได้อีกเป็นสามประเภท ได้แก่ บล็อกประกาศตัวแปร บล็อกแสดง
ค่าของตัวแปร และบล็อกของสคริปเลต เครื่องหมายอัศเจรีย์ และเครื่องหมายเท่ากับ ที่อยู่
หลังเครื่องหมาย <% ในโปรแกรมที่ 3-1 ล้วนเป็นสิ่งที่ใช้แยกความแตกต่างระหว่างบล็อกเจ
เอสพีแต่ละประเภทบล็อกของคำสั่งเจเอสพีมีหลายประเภท ดังต่อไปนี้

บล็อกประกาศตัวแปร

บล็อกประกาศตัวแปรคือบล็อกเจเอสพีที่ถูกล้อมด้วยเครื่องหมาย <%! และ %> คำสั่งเจเอส
พีที่อยู่ภายในบล็อกประกาศตัวแปรต้องเป็นคำสั่งประกาศตัวแปรหรือแมธธอสในภาษาจาวา
และอาจมีมากกว่าหนึ่งคำสั่งก็ได้ ตัวอย่างของบล็อกประกาศตัวแปรที่ผ่านมาแล้วใน
โปรแกรมที่ 3-1 ได้แก่
<%! int count = 0; %>
คำสั่งในบล็อกนี้เป็นการประกาศตัวแปรจำนวนเต็มชื่อ count และกำหนดให้มีค่าเริ่มต้นเป็น
0 โปรดสังเกตว่าต้องจบคำสั่งด้วยเครื่องหมาย ; เสมอตามหลักภาษาจาวาทั่วไป ถ้าต้องการ
ประกาศตัวแปรมากกว่าหนึ่งตัวก็สามารถทำได้เช่น
<%! int i = 0;
double j = 0.0;
%>
แบบนี้เป็นการประกาศตัวแปรสองตัวในบล็อกประกาศตัวแปรบล็อกเดียว คือ ตัวแปร
จำนวนเต็ม i และ ตัวแปรทศนิยมแบบยาว j โดยกำหนดให้มีค่าเริ่มต้นเท่ากับ 0 ทั้งคู่
นอกจากการประกาศตัวแปรแล้ว บล็อกประกาศตัวแปรยังใช้ประกาศแมธธอสได้อีกด้วย
เช่น
<%! int square(int i) {
return i*i;
}
%>
ตัวอย่างนี้เป็นการประกาศแมธธอสชื่อ square() ซึ่งสามารถคำนวนค่ายกกำลังสองของเลข
จำนวนเต็มให้เราได้ เราสามารถเรียกใช้แมธธอส square() นี้ที่ใดก็ได้ในไฟล์ .jsp ของเรา
เสมือนเป็นแมธธอสช่วยเหลือ


บล็อกแสดงค่าตัวแปร

บล็อกแสดงค่าตัวแปร คือ บล็อกเจเอสพีที่ล้อมรอบด้วยเครื่องหมาย <%= และ %> ดังใน
โปรแกรมที่ 3-1 ข้างต้นมีบล็อกแสดงค่าตัวแปรอยู่หนึ่งบล็อกได้แก่
<%= ++count %>
คำสั่งในบล็อกนี้อาจเป็นได้ทั้งตัวแปร แมธธอส หรือวัตถุต่างๆ ซึ่งมีค่าในตัวของมันเอง เวลา
เจเอสพี คอนเทนเนอร์เจอบล็อกแสดงค่าตัวแปร มันจะแสดงค่าของตัวแปร แมธธอส หรือ
วัตถุนั้นๆ ในตำแหน่งนั้นออกมา เช่นในกรณีข้างต้นคำสั่งนี้เป็นการบอกให้บวกค่าปัจจุบัน
ของตัวแปร count ด้วยหนึ่ง แล้วแสดงค่าของตัวแปร count สิ่งที่ได้คือเบราเซอร์จะแสดงค่า
ปัจจุบันของตัวแปร count ซึ่งก็คือตัวเลขบอกจำนวนผู้เยี่ยมชมออกมา สังเกตว่าคำสั่งใน
บล็อกนี้ไม่ต้องมีเครื่องหมาย ; ต่อท้าย


บล็อกสคริปเลต

บล็อกเจเอสพีประเภทสุดท้ายได้แก่ บล็อกสคริปต์เลต ซึ่งถูกล้อมรอบด้วยเครื่องหมาย <%
และ %> ธรรมดา

คอมเมนท์ในเจเอสพี

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