Upload
bongza-naruk
View
2.086
Download
5
Embed Size (px)
DESCRIPTION
Citation preview
ความเป็�นมาของภาษา JSP
JSP (Java Server Page) ภาษา JSP เป็�นเทคโนโลยี�ของจาวาสำ�าหรั�บสำรั�าง HTML, XML หรั�อตามท��ผู้ �ใช้�รั�องขอม�ต�วแป็ลภาษาค�อ Tomcat Apache และ Java Compiler พั�ฒนาโดยี James Duncan Davidson ค.ศ.2000
Java Server Page (JSP) เป็�นเทคโนโลยี�สำ�าหรั�บการัควบค*มเน�+อหาหรั�อสำ,�งท��มองเห-นของเว-บเพัจผู้.านการัใช้� servlet
ผู้ �พั�ฒนา Java ได�อ�างถึ1งเทคโนโลยี� JSP เป็�น Servlet
application program interface โดยี JSP เป็รั�ยีบเท�ยีบได�ก�บเทคโนโลยี� (ASP) ของ Microsoft ขณะท�� Java Server
Page เรั�ยีกโป็รัแกรัม Java โดยีแม.ข.ายีเว-บ Active Server
Page เก-บสำครั,ป็ต3ท��ได�รั�บการัแป็ลไว� ก.อนเพัจได�รั�บการัสำ.งไป็ยี�งผู้ �ใช้� เพัจ HTML ท��เก-บการัเช้��อมโยีงก�บ Java servlet บางครั�+งใช้�ไฟล3นามสำก*ล .JSP
ก้�าวแรก้ สู่��โลก้ JSP
ค�าสำ��งหรั�อข�อความต.าง ๆ ท��ป็รัากฏอยี .ในไฟล3 JSP อาจม�เพั�ยีงบรัรัท�ดเด�ยีว หรั�อหลายี ๆ บรัรัท�ด เรั�ยีงก�นเป็�นบล-อก เรั�ยีกค�าสำ��งหรั�อข�อความเหล.าน�+อยี.างสำ�+น ๆ ว.า element ม�อยี . 4 แบบ ค�อ
1. Scripting elements ได�แก. code ของจาวาท��เข�ยีนใน scriptlet
หน�า 1
2. Comments ข�อความต.าง ๆ ท��ผู้ �เข�ยีนโป็รัแกรัมอธิ,บายี หรั�อขยีายีความ coding ต.าง ๆในโป็รัแกรัม สำะดวกต.อผู้ �อ.าน และสำะดวกในแก�ไขโป็รัแกรัมในภายีหล�งเม��อเวลาผู้.านไป็นาน ๆ ข�อความใน comment น�+ server จะไม.น�าไป็ป็รัะมวลผู้ล
3. Directives ค�อค�าสำ� �งท��ใช้�ก�าก�บ web server เช้.น ก�าหนดให�แสำดงผู้ลของ page น�+เป็�นแบบ XML ไม.ใช้. Html
4. Actions สำ�าหรั�บก�าหนดการักรัะท�าบางอยี.างเช้.น ก�าหนดให�น�า page หน�าอ��น มาแสำดงผู้ลรั.วมก�บ page ป็9จจ*บ�น
Scripting Element:
Scripting element ออกเป็�น 3 ล�กษณะ ค�อ Scriptlet,
Declaration และ Expression
1. Scriptlet จะเรั,�มต�นด�วยี <% และป็:ดท�ายีด�วยี %>
รัะหว.างเครั��องหมายีน�+จะเป็�นค�าสำ� �งในภาษาจาวา เช้.น <%
out.println("Hello, World"); %> จะม�ค�าสำ� �งภาษาจาวา 1
ป็รัะโยีค อ�นท��จรั,งรัะหว.างเครั��องหมายี<% และ %> จะม�ค�าสำ� �งภาษาจาวาได�หลายีป็รัะโยีค ด�งน�+น scriptlet จ1งเป็�นสำ,�งท��ป็รัากฏให�เห-นในไฟล3 JSP มากกว.า Scripting elements แบบอ��น ๆ
สำามารัถึใช้�ก�บ if…else , for, while, do…while และอ��นๆ
ร�ป็แบบ
หน�า 2
<% scriptlets %>
Declaration :
ใช้�ในการัป็รัะกาศ ต�วแป็รั เมธิอด คลาสำ และอ��น ๆ ในภาษาจาวา เรัาสำามารัถึใช้� scriptlet ป็รัะกาศค.าต�วแป็รัได�เช้.นก�น แต.การัป็รัะกาศ ช้น,ดข�อม ลของต�วแป็รั เมธิอด หรั�อคลาสำ ต�องใช้� “Declaration” เท.าน�+น markup หรั�อ เครั��องหมายีท��ใช้�ป็รัะกาศ จะอยี .รัะหว.าง <%! ก�บ %>
ร�ป็แบบ
<%! declarations %>
หน�า 3
Example 2.1 ม�การัป็รัะกาศ และ การัเรั�ยีกใช้�เมธิอด
หน�า 4
Expression :
เป็�น Java code สำ�+น ๆ ท��สำามารัถึค�านวณหรั�อหาค.าตามท��ก�าหนดให�ได� ป็รัะโยีคท��จะค�านวณหรั�อหาค.าจะต�องอยี .รัะหว.าง <%= และ %> และไม.ต�องม�เครั��องหมายีเซม,โคลอน ; ต.อท�ายี ผู้ลล�พัธิ3ท��ได�จะแสำดงอยี .ในรั ป็ text mode ในเว-บเพั-จน�+น
ร�ป็แบบ
<%= expression %>
หน�า 5
Comments:
คอมเมนท3ใน JSP ก-เหม�อนก�บคอมเมนท3ภาษาคอมพั,วเตอรั3อ��น ๆ ม�ไว�เพั��ออธิ,บายีขยีายีความค�าสำ��งในโป็รัแกรัมให�ม�ความช้�ดเจนเข�าใจง.ายี รั �ว.าค�าสำ� �งท�าอะไรั ด�วยีว,ธิ�การัอยี.างไรั ต�องสำ.งผู้.านต�วแป็รัใดบ�าง และผู้ลล�พัธิ3เป็�นอยี.างไรั สำะดวกสำ�าหรั�บในการัแก�ไขโป็รัแกรัมในภายีหล�ง หรั�อสำะดวกต.อโป็รัแกรัมเมอรั3อ��นท��เข�ามาจ�ดการัแก�ไขโป็รัแกรัม ข�อความในคอมเมนท3จะไม.ถึ กคอมไพัล3 ใน JSP
ร�ป็แบบ
<%-- declarations -- %>
หน�า 6
Directives
JSP directive เป็�นการัก�าหนดให� server รั �ว.าจะป็รัะมวลผู้ลเว-บเพั-จในล�กษณะอยี.างไรั ม� 3 แบบ ค�อ
1. page จะก�าหนดให� เซ,รั3ฟเวอรั3รั �ว.าจะแสำดงผู้ลเว-บเพัจหน�าน�+อยี.างไรั เช้.น เป็�น HTML หรั�อ XML
2. include แจ�งให�เซ,รั3ฟเวอรั3น�าเว-บเพัจหน�าอ��น หรั�อ resource อ��น ๆ เข�ามารัวมก�บเว-บเพัจหน�าป็9จจ*บ�น
3. tablib ใช้�ก�าหนด JSP tag ท��น,ยีามไว� ใน tag
library ค�าสำ��งช้น,ด ไดเรักท,ฟ จะอยี .รัะหว.างเครั��องหมายี <%@
และ %>
ตั�วอย่�างการัใช้� directive “page” ก�าหนดให� output แสำดงผู้ลเป็�นแบบ HTML ก�าหนดรัห�สำภาษาท��ใช้�แสำดงเป็�น utf8
หน�า 7
1
Actions:
เป็�นการัก�าหนดให� JSP กรัะท�าในสำ,�งท��เรัาต�องการั เช้.น forward ไป็ยี�งเว-บไซต3อ��น ใน JSP ม� action อยี . 2 แบบค�อ Standard action ซ1�งฝั9งมาในต�ว JSP เอง และ custom
action เป็�น action ท��เรัาสำรั�างข1+นเอง Standard action ท��พับบ.อยีได�แก.
1. <jsp:forward> เป็�นการัฟอรั3เว,ด request ไป็ยี�งเว-บไซต3อ��น
2. <jsp:include> เป็�นการัน�า output ของ web
component เช้.น จากไฟล3 HTML อ��นๆ หรั�อ JSP หรั�อ servlet มาใสำ.ตรังต�าแหน.งท��ค�าสำ� �งน�+วางอยี .
หน�า 8
3. <jsp:plugin> เป็�นการัก�าหนดให� applet หรั�อ JavaBean ท�างานโดยีอาศ�ยีโป็รัแกรัมท��เป็�น plug in
4. <jsp:getProperty>, <jsp:setProperty>
และ <jsp:useBean> เป็�นการัน�าค.าหรั�อก�าหนดค.า property และ น�า JavaBean มาใช้�งานในโป็รัแกรัมการัสำ.งข�อม ลผู้.านหน�าเว-บเพัจ
ในกรัณ�ท��เรัาให�ผู้ �ใช้�ป็=อนข�อม ลผู้.านหน�าเว-บเพัจ เช้.น ป็=อนช้��อและนามสำก*ล แล�วน�าข�อม ลท��ผู้ �ใช้�ป็=อนเข�ามาไป็แสำดงผู้ลบนหน�าเว-บเพัจอ�กหน�าหน1�ง ในท��น�+จะให�ผู้ �ใช้�ป็=อนข�อม ลในไฟล3ท��ช้��อ 05.html สำ.วนท��ป็=อนข�อม ลน�+นอยี .รัะหว.าง tag <FORM> และ </FORM> ด�งต.อไป็น�+
รวมโป็รแก้รมเบ��องตั�น ด้�วย่ภาษาเจเอสู่พี! (JSP
Language)
1.โป็รแก้รมพี"มพี# 1 ถึ%ง 10 ด้�วย่ for
หน�า 9
2. โป็รแก้รม เช็'คว�าเป็�นว�นหย่)ด้หร�อไม� โด้ย่ใช็� if...else
หน�า 10
3. ก้ารลด้ทอนค�าโด้ย่ใช็� while loop
หน�า 11
4.ก้าเล�อก้ว�นโด้ย่ switch case
หน�า 12
ข�อด้!ภาษา JSP
- JSP สำามารัถึเรั�ยีนรั �และใช้�งานได�ง.ายี- JSP สำามารัถึท�างานได�อยี.างม�ป็รัะสำ,ทธิ,ภาพัในฝั9� งเซ,รั3ฟเวอรั3- JSP จะท�าการั compiled ก.อนเสำมอ ท��จะสำ.งไป็รั�นบนเซ,รั3ฟเวอรั3- JSP สำามารัถึใช้�งานรั.วมก�บ servlets ได�- JSP เป็�นสำ.วนหน1�งของ J2EE ซ1�งหมายีความว.า JSP สำามารัถึเป็�นสำ.วนในการัท�างานท��ง.ายี หรั�อซ�บซ�อนได�- JSP เข�ยีนด�วยีภาษา java จ1งท�าให�ม�ป็รัะสำ,ทธิ,ภาพั และใช้�งานได�ง.ายีกว.า- JSP สำามารัถึใช้�ก�บ webserver รัะบบป็ฏ,บ�ต,การัใด ๆ ได� ไม.เฉพัาะแต.ของ Microsoft Web servers เท.าน�+น
ข�อเสู่!ย่ภาษา JSP
ข�อเสำ�ยีท��เห-นได�ช้�ดค�อการัยีากในการัจ�ดเก-บ และการัยีากในการัยี�ายีไฟล3จากเซฟเวอรั3หน1�ง ไป็ยี�งอ�กเซฟเวอรั3หน1�ง เพัรัาะโดยีท��วไป็แต.ละ webserver จะม�ล�กษณะการัจ�ดเก-บไฟล3ไม.เหม�อนก�น แต.เม��อ Java Servlet Specification เวอรั3ช้��น 2.2 ออกมา เซฟเวอรั3ท��ใช้�รั�น Servlet v2.2 จะถึ กบ�งค�บให�ม�ต�องการัสำน�นสำน*นการัจ�ดเก-บไฟล3แบบหน1�ง ท��เรั�ยีกว.า Web Applicaton
web application ค�อกล*.มของไดเรัคทรัอรั��และไฟล3ท��
หน�า 13
อาจจะป็รัะกอบด�วยี html, jsp, servlet, javabean และอ��น ๆ ซ1�งอยี .รัวมก�นในล�กษณะของรัะบบไฟล3 (file system) หรั�อถึ กอ�ดอยี .ในไฟล3เด�ยีวก�นโดยีจะเรั�ยีกว.า Web Archive (.war) ไฟล3 ซ1�งม�ป็รัะโยีช้น3ในการัโยีกยี�ายีและต,ดต�+งจากเซฟเวอรั3หน1�งไป็ยี�งอ�กเซฟเวอรั3หน1�ง
บรรณาน)ก้รม
http://www.rmutphysics.com/charud/oldnews/0/286/17/9/pic1/prg_note/jsp/JSPInADay.html
http://belldeveloper.blogspot.com/2010/09/blog-post_13.html
http://www.thaiall.com/jsp/
หน�า 14