Más contenido relacionado
La actualidad más candente (20)
ภาษา Jsp
- 1. ความเป็นมาของภาษา JSP
JSP (Java Server Page) ภาษา JSP เป็นเทคโนโลยีของ
จาวาสำาหรับสร้าง HTML, XML หรือตามที่ผู้ใช้ร้องขอมีตัวแปล
ภาษาคือ Tomcat Apache และ Java Compiler พัฒนาโดย
James Duncan Davidson ค.ศ.2000
Java Server Page (JSP) เป็นเทคโนโลยีสำาหรับการ
ควบคุมเนื้อหาหรือสิ่งที่มองเห็นของเว็บเพจผ่านการใช้ servlet
ผู้พัฒนา Java ได้อ้างถึงเทคโนโลยี JSP เป็น Servlet
application program interface โดย JSP เปรียบเทียบได้
กับเทคโนโลยี (ASP) ของ Microsoft ขณะที่ Java Server
Page เรียกโปรแกรม Java โดยแม่ข่ายเว็บ Active Server
Page เก็บสคริปต์ที่ได้รับการแปลไว้ ก่อนเพจได้รับการส่งไป
ยังผู้ใช้ เพจ HTML ที่เก็บการเชื่อมโยงกับ Java servlet บาง
ครั้งใช้ไฟล์นามสกุล .JSP
ก้าวแรก สู่โลก JSP
คำาสั่งหรือข้อความต่าง ๆ ที่ปรากฏอยู่ในไฟล์ JSP อาจมี
เพียงบรรทัดเดียว หรือหลาย ๆ บรรทัด เรียงกันเป็นบล็อก เรียก
คำาสั่งหรือข้อความเหล่านี้อย่างสั้น ๆ ว่า element มีอยู่ 4 แบบ
คือ
1. Scripting elements ได้แก่ code ของจาวาที่เขียน
ใน scriptlet
2. Comments ข้อความต่าง ๆ ที่ผู้เขียนโปรแกรมอธิบาย
หรือขยายความ coding ต่าง ๆในโปรแกรม สะดวกต่อผู้อ่าน
และสะดวกในแก้ไขโปรแกรมในภายหลังเมื่อเวลาผ่านไปนาน
ๆ ข้อความใน comment นี้ server จะไม่นำาไปประมวลผล
หน้า 1
- 2. 3. Directives คือคำาสั่งที่ใช้กำากับ web server เช่น
กำาหนดให้แสดงผลของ page นี้เป็นแบบ XML ไม่ใช่ Html
4. Actions สำาหรับกำาหนดการกระทำาบางอย่างเช่น
กำาหนดให้นำา page หน้าอื่น มาแสดงผลร่วมกับ page ปัจจุบัน
Scripting Element:
Scripting element ออกเป็น 3 ลักษณะ คือ Scriptlet,
Declaration และ Expression
1. Scriptlet จะเริ่มต้นด้วย <% และปิดท้ายด้วย %>
ระหว่างเครื่องหมายนี้จะเป็นคำาสั่งในภาษาจาวา เช่น <%
out.println("Hello, World"); %> จะมีคำาสั่งภาษาจาวา 1
ประโยค อันที่จริงระหว่างเครื่องหมาย<% และ %> จะมีคำาสั่ง
ภาษาจาวาได้หลายประโยค ดังนั้น scriptlet จึงเป็นสิ่งที่
ปรากฏให้เห็นในไฟล์ JSP มากกว่า Scripting elements
แบบอื่น ๆ
สามารถใช้กับ if…else , for, while, do…while และอื่นๆ
รูปแบบ
<% scriptlets %>
หน้า 2
- 3. Declaration :
ใช้ในการประกาศ ตัวแปร เมธอด คลาส และอื่น ๆ ใน
ภาษาจาวา เราสามารถใช้ scriptlet ประกาศค่าตัวแปรได้เช่น
กัน แต่การประกาศ ชนิดข้อมูลของตัวแปร เมธอด หรือคลาส
ต้องใช้ “Declaration” เท่านั้น markup หรือ เครื่องหมายที่
ใช้ประกาศ จะอยู่ระหว่าง <%! กับ %>
รูปแบบ
<%! declarations %>
หน้า 3
- 6. เป็น Java code สั้น ๆ ที่สามารถคำานวณหรือหาค่าตามที่
กำาหนดให้ได้ ประโยคที่จะคำานวณหรือหาค่าจะต้องอยู่ระหว่าง
<%= และ %> และไม่ต้องมีเครื่องหมายเซมิโคลอน ; ต่อท้าย
ผลลัพธ์ที่ได้จะแสดงอยู่ในรูป text mode ในเว็บเพ็จนั้น
รูปแบบ
<%= expression %>
Comments:
หน้า 6
- 7. คอมเมนท์ใน JSP ก็เหมือนกับคอมเมนท์ภาษาคอมพิวเตอร์
อื่น ๆ มีไว้เพื่ออธิบายขยายความคำาสั่งในโปรแกรมให้มีความ
ชัดเจนเข้าใจง่าย รู้ว่าคำาสั่งทำาอะไร ด้วยวิธีการอย่างไร ต้องส่ง
ผ่านตัวแปรใดบ้าง และผลลัพธ์เป็นอย่างไร สะดวกสำาหรับใน
การแก้ไขโปรแกรมในภายหลัง หรือสะดวกต่อโปรแกรมเมอร์
อื่นที่เข้ามาจัดการแก้ไขโปรแกรม ข้อความในคอมเมนท์จะไม่
ถูกคอมไพล์ ใน JSP
รูปแบบ
<%-- declarations -- %>
Directives
หน้า 7
- 8. JSP directive เป็นการกำาหนดให้ server รู้ว่าจะประมวลผล
เว็บเพ็จในลักษณะอย่างไร มี 3 แบบ คือ
1. page จะกำาหนดให้ เซิร์ฟเวอร์รู้ว่าจะแสดงผลเว็บเพจ
หน้านี้อย่างไร เช่น เป็น HTML หรือ XML
2. include แจ้งให้เซิร์ฟเวอร์นำาเว็บเพจหน้าอื่น หรือ
resource อื่น ๆ เข้ามารวมกับเว็บเพจหน้าปัจจุบัน
3. tablib ใช้กำาหนด JSP tag ที่นิยามไว้ ใน tag
library คำาสั่งชนิด ไดเรกทิฟ จะอยู่ระหว่างเครื่องหมาย <%@
และ %>
ตัวอย่างการใช้ directive “page” กำาหนดให้ output
แสดงผลเป็นแบบ HTML กำาหนดรหัสภาษาที่ใช้แสดงเป็น
utf8
1
Actions:
หน้า 8
- 9. เป็นการกำาหนดให้ JSP กระทำาในสิ่งที่เราต้องการ เช่น
forward ไปยังเว็บไซต์อื่น ใน JSP มี action อยู่ 2 แบบคือ
Standard action ซึ่งฝังมาในตัว JSP เอง และ custom
action เป็น action ที่เราสร้างขึ้นเอง Standard action ที่
พบบ่อยได้แก่
1. <jsp:forward> เป็นการฟอร์เวิด request ไปยัง
เว็บไซต์อื่น
2. <jsp:include> เป็นการนำา output ของ web
component เช่น จากไฟล์ HTML อื่นๆ หรือ JSP หรือ
servlet มาใส่ตรงตำาแหน่งที่คำาสั่งนี้วางอยู่
3. <jsp:plugin> เป็นการกำาหนดให้ applet หรือ
JavaBean ทำางานโดยอาศัยโปรแกรมที่เป็น plug in
4. <jsp:getProperty>, <jsp:setProperty> และ
<jsp:useBean> เป็นการนำาค่าหรือกำาหนดค่า property
และ นำา JavaBean มาใช้งานในโปรแกรมการส่งข้อมูลผ่าน
หน้าเว็บเพจ
ในกรณีที่เราให้ผู้ใช้ป้อนข้อมูลผ่านหน้าเว็บเพจ เช่น
ป้อนชื่อและนามสกุล แล้วนำาข้อมูลที่ผู้ใช้ป้อนเข้ามาไปแสดง
ผลบนหน้าเว็บเพจอีกหน้าหนึ่ง ในที่นี้จะให้ผู้ใช้ป้อนข้อมูลใน
ไฟล์ที่ชื่อ 05.html ส่วนที่ป้อนข้อมูลนั้นอยู่ระหว่าง tag
<FORM> และ </FORM> ดังต่อไปนี้
- 14. - JSP สามารถเรียนรู้และใช้งานได้ง่าย
- JSP สามารถทำางานได้อย่างมีประสิทธิภาพในฝั่งเซิร์ฟเวอร์
- JSP จะทำาการ compiled ก่อนเสมอ ที่จะส่งไปรันบน
เซิร์ฟเวอร์
- JSP สามารถใช้งานร่วมกับ servlets ได้
- JSP เป็นส่วนหนึ่งของ J2EE ซึ่งหมายความว่า JSP สามารถ
เป็นส่วนในการทำางานที่ง่าย หรือซับซ้อนได้
- JSP เขียนด้วยภาษา java จึงทำาให้มีประสิทธิภาพ และใช้งาน
ได้ง่ายกว่า
- JSP สามารถใช้กับ webserver ระบบปฏิบัติการใด ๆ ได้ ไม่
เฉพาะแต่ของ Microsoft Web servers เท่านั้น
ข้อเสียภาษา JSP
ข้อเสียที่เห็นได้ชัดคือการยากในการจัดเก็บ และการยาก
ในการย้ายไฟล์จากเซฟเวอร์หนึ่ง ไปยังอีกเซฟเวอร์หนึ่ง เพราะ
โดยทั่วไปแต่ละ webserver จะมีลักษณะการจัดเก็บไฟล์ไม่
เหมือนกัน แต่เมื่อ Java Servlet Specification เวอร์ชั่น 2.2
ออกมา เซฟเวอร์ที่ใช้รัน Servlet v2.2 จะถูกบังคับให้มีต้องกา
รสนันสนุนการจัดเก็บไฟล์แบบหนึ่ง ที่เรียกว่า Web
Applicaton
web application คือกลุ่มของไดเรคทรอรี่และไฟล์
ที่อาจจะประกอบด้วย html, jsp, servlet, javabean และอื่น
ๆ ซึ่งอยู่รวมกันในลักษณะของระบบไฟล์ (file system) หรือ
ถูกอัดอยู่ในไฟล์เดียวกันโดยจะเรียกว่า Web Archive (.war)
ไฟล์ ซึ่งมีประโยชน์ในการโยกย้ายและติดตั้งจากเซฟเวอร์หนึ่ง