הכרות ראשונית עם טכנולוגיית JSP
הערת הקדמה: במאמר זה ובעוקבים לו, נשתמש בשרת ה- web שנקרא tomcat ורצוי מאד למתחילים להשתמש בו גם כן (לשם קלות ההדגמות וההסברים).
קבצי JSP מיועדים לכתיבת דפי אינטרנט שאינם סטטים, ומסוגלים לקבל מידע מתוך לוגיקה מסוימת, מסד נתונים שיושב בצד השרת, קובץ מסוים וכו'. כשאנו כותבים דפי HTML רגילים, כל שעלינו לדאוג הוא שהתוכן שלהם יהיה קריא וברור, והעימוד יהיה נורמאלי. אין באפשרותינו להחליט איזה תוכן להציג אלא מראש (בזמן כתיבת דף ה- HTML).
ב- JSP זה שונה. אנחנו יכולים לבצע שינויים בתוכן הדף אותו נציג בעוד רגע לגולש. נעשה זאת ע"י שתילת קוד JAVA בתוך דף ה-HTML הסטטי שלנו, ונשנה את סיומת הקובץ ל- .jsp במקום .html כך יצרנו דף דינאמי שמכיל בנוסף לתוכן, לוגיקה.
לדוגמא, נכתוב דף HTML פשוט:1
2
3
4
5
6
7
8
9
10
11 <html>
<head>
<title>hello world</title>
</head>
<body>
Hello World!
</body>
</html>
הדף מציג את המשפט Hello World ותו לא. כדי להפוך דף זה ל- JSP נוסיף קוד ג'אווה פשוט פנימה:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <html>
<head>
<title>hello world</title>
</head>
<body>
<%
String str = "Hello World!";
%>
the next line is the content of the java variable str:<br>
<%= str %>
</body>
</html>
את הקובץ יש לשמור בסיומת .jsp (ולא .html), ולשים אותו בתיקיית השירות של שרת web מסוים.
מומלץ להשתמש בשרת ה- web הפשוט והחזק tomcat שניתן להורידו חינם מהאינטרנט.
נסו בכתובת הבאה:
http://apache.fresh.co.il/jakarta/tomcat-4/v4.1.30/bin/jakarta-tomcat-4.1.30.exe
אם לא הצלחתם, חפשו בגוגל download tomcat. התוצאות לא יאחרו לבוא…
ההתקנה פשוטה מאד (wizard), ותיקיית השירות שלו נמצאת תחת: tomcat_dir/webapps/ROOT. ברגע שהשרת מופעל (ב-tomcat זה פשוט מאד, יש ב- start->programs צלמית הפעלה והפסקהשל השרת), יש לכתוב בדפדפן האינטרנט:http://localhost:8080 זוהי הכתובת של המחשב המקומי(שלכם!), ב-port שמספרו 8080 (שהוא port ברירת המחדל ב-tomcat). בהקשת הכתובת הנ"ל, נגיע לדף הבית של השרת שמכיל מידע והכוונות. אין לנו צורך בדף זה ואנו רוצים לבדוק את דף ה- jsp שכתבנו ושמנו אותו בתיקיית השירות של tomcat, לכן נקיש כתובת מלאה:
http://localhost:8080/name_of_page.jsp כש-name_of_page.jsp הוא שם הדף אותו כתבנו קודם לכן.
מייד בהקשת הכתובת המפורשת הנ"ל בה ביקשנו את הדף הספציפי שכתבנו, אנחנו אמורים לקבל את התוצאה הבאה:
1 2 |
|
מה שעשינו זה, הכרזנו על משתנה מטיפוס String שנקרא str (סתם לדוגמא, יכולנו לקרוא לו גם moshe), והצבנו בו את הערך: Hello World. פקודה אחת מתחת, היתה פקודת HTML שנקראת <br> ומטרתה לרדת שורה אחת למטה, ופקודה אחר כך, מטרתה היא להדפיס את ערך המשתנה שלנו: <%= str %>.
תגי HTML נמצאים בתוך סוגריים משולשים (> ו- <) וכך גם התג המיוחד של JSP. השונה הוא שאחרי הסוגר הפותח ולפני הסוגר המסיים של תג ה-JSP שמים גם את התו %, וזאת כדי שהשרת יבחין שאלו תגים מיוחדים של JSP ולא תגי HTML רגילים. כל מה שהשרת ימצא בין התגים <% ו- %> הוא יחשיב כפקודות JAVA רגילות לחלוטין, וינסה להריצן. טעות בכתיב של פקודה יגרום לשרת להודיע כי הדף לא ניתן להצגה (אין סלחנות כמו ב- HTML).
נסה להכניס את הקוד הבא, במקום הקוד שכתבנו למעלה:
1 2 3 4 5 6 7 8 |
|
הקוד הנ"ל, מבצע לולאה שרצה מ- 0 ועד 10 (לא כולל), ומדפיסה את המשפטים הבאים:
1 2 3 4 5 6 7 8 9 10 |
|
שים לב, שהקוד שכתבנו כאן, מכיל לולאה של JAVA ובתוכה פקודת HTML (כמו <br> למשל)כמו גם פקודת JSP (כמו: <%= i %>שמטרתה להדפיס את תוכן המשתנה i ).
נסה לשחק עם הדף, ולהכניס בו פקודות JAVA נוספות כיד הדמיון הטובה. כדוגמא, אפשר לנסות את הקוד הבא:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
נסה לקרוא את הקוד ולהבין בדיוק איך מתקבלת התוצאה.
תגובות בפייסבוק