jsp (java server pages) - jsp.pdf · เมื่อไฟล์ jsp...

Post on 10-Mar-2020

22 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

ธระยทธ ทองเครอ

JSP

Java Server Pages

JSPJSP คอ เทคโนโลยทใชในการสราง Web Application เชนเดยวกบ Servlet JSP จะประมวลผลบน Server โดยสามารถรบ request และสง response ได

เชนเดยวกบ ServletJSP จะคลายคลงกบภาษา PHP คอ เขยน HTML, CSS หรอ JS และแทรกสวนท

ท างานในแทกเฉพาะ

2

<html>

<body>

<?php

echo "Hello World";

?>

</body>

</html>

<html>

<body>

<%

out.println( "Hello World");

%>

</body>

</html>

PHP JSP

การแทรกค าสงภาษา Java ใน JSPใชสญลกษณทเรยกวา Scriptlet

3

<html>

<body>

<% int count = 0; %>

The page count is now:

<%

out.println(count++);

%>

</body>

</html>

<% โคดภาษา Java %>

ตวอยาง

4

<html><body><% for (int i=1; i<=10; i++) { %>

Hello <%=i %> <br><% } %></body></html>

แทก Expressionแทก Expression ใชแทนค าสง out.prinln( ) มรปแบบดงน

5

<html>

<body>

<% int count = 0; %>

The page count is now:

<% out.println(count++); %>

</body>

</html>

<html>

<body>

<% int count = 0; %>

The page count is now:

<%= count++ %>

</body>

</html> !!! ขอควรระวง !!!แทกนจะไมม Semicolon

ไมใชแทก Expression ใชแทก Expression

<%= expression %>

Implicit objectObject ทไฟล JSP สามารถเรยกใชไดเลย โดยไมตองประกาศกอน ไดแก

out - ใชส าหรบใสขอมล response ในสวนทจะสงกลบไปแสดงผล request – ใชดงขอมลจาก HTTP request response - ใชเกบขอมลผลลพธทสงกลบ session – ตวแปร session

6

ตวอยาง

7

<html><body><%

String fname = request.getParameter("fname");out.println(fname + "<br>");

%>

<%= request.getParameter("lname") %></body></html>

<html><body>oily<br>sunny</body></html>

ผลลพธจาก Browser ผลลพธในรปแบบโคด

ภาษาไทยบน JSPใชค าสงดงน

ซงเปนค าสงเดยวกบใน Servlet

8

<%@page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>

response.setCharacterEncoding("utf-8");

response.setContentType("text/html; charset=utf-8");

กจกรรมจงสรางฟอรม HTML และสงขอมลไปยงไฟล JSP อกไฟลหนง เพอแสดงผลดง

ตวอยาง

9

กจกรรมจงเปลยนนามสกลไฟล .html จากกจกรรมกอนหนาเปน .jsp และเพมฟอรมรบคาวน

เดอนปเกด ทเปนแบบรายการใหผใชเลอก โดยใชวธการวนลปดวยค าสงภาษาจาวา ดงตวอยาง

10

JSP จะถกแปลเปน ServletJSP ทสรางขน มนามสกลเปน .jsp เมอไฟล JSP ถกเรยกครงแรก Web Container จะแปลใหเปน Servlet (.java) กอน

เรมท างาน หากมแทกตางๆจะถกแปลงเปน content เกบลงใน response

11

การแปลและ compile ไมไดเกดขนทกครงท JSP ถกเรยกแตจะเกดขน 2 กรณเทานน- ผใชเรยกไฟล JSP ครงแรก- ไฟล JSP มการแกไข

JSP คอ Servletโครงสรางของ JSP จะมความคลายคลงกบ Servlet โดยมเมธอด service( ) ทท า

หนาทรบ request และสง response (JSP ใชชอเมธอด _jspService)

12

ไฟล JSP ทถกแปลเปน Servlet จะเกบอยใน[workspace folder]\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost

การ importหาก JSP มการเรยกใชคลาสมาตรฐานของ Java หรอคลาสทสรางขนเองจะตอง

import ในรปแบบดงน

ตวอยาง<%@page import="java.util.*" %><%@page import="java.util.*, mypack.*" %><%@page import="java.util.ArrayList, mypack.TestDB, mypack2.*" %>

เรยกแทกชนดนวา Directive

13

<%@page import="ชอ package และคลาส" %>

ใช * เพอระบวาตองการใชทกคลาสใน package

หากใชคลาสจากหลาย package ใหคนดวย comma

สามารถระบจ าเพาะชอคลาสทตองการใชหลงชอ package ได

การใส CommentComment ใน JSP อยในรปแบบดงน

Comment แบบนจะไมถกสงไปกบ response (client ไมเหนใน code html)

หากใช Comment ในรปแบบภาษา html จะสามารถมองเหนไดท client

14

<%-- JSP Comment --%>

<!-- HTML Comment -->

include directiveการแยกสวนประกอบของเวบเพจไวคนละไฟลจะชวยใหงายตอการกลบมาแกไข

สามารถใช Include directive เพอชวยในการก าหนด Template ของเวบไซตได

ไฟล html หรอ jsp ทตองการน ามาประกอบเปนสวนหนงของเวบเพจจะใชค าสงดงน

15

<jsp:include page="path/ชอไฟล jsp หรอ html"/>

16

Page1.jsp<html><body><jsp:include page="header.jsp"/>

xxxxx Page 1 Content xxxxxx

<jsp:include page="footer.html"/></body></html>

header.jsp<div style="background-color: navy; color: white;"><h1>Header</h1></div>

footer.html<br><br><div style="background-color: aqua;">Footer</div>

Page2.jsp<html><body><jsp:include page="header.jsp"/>

<h3>Page 2 Content</h3>

<jsp:include page="footer.html"/></body></html>

เอกสารอางองBryan Basham, Kathy Sierra, and Bert Bates. Head First Servlets and JSP, 2nd

Edition, United States of America, O'Reilly Media, 2008.

17

top related