לדלג לתוכן

Java Servlet

מתוך ויקיפדיה, האנציקלופדיה החופשית
הערך נמצא בשלבי עבודה: כדי למנוע התנגשויות עריכה ועבודה כפולה, אתם מתבקשים שלא לערוך את הערך בטרם תוסר ההודעה הזו, אלא אם כן תיאמתם זאת עם מניח התבנית.
אם הערך לא נערך במשך שבוע ניתן להסיר את התבנית ולערוך אותו, אך לפני כן רצוי להזכיר את התבנית למשתמש שהניח אותה, באמצעות הודעה בדף שיחתו.
הערך נמצא בשלבי עבודה: כדי למנוע התנגשויות עריכה ועבודה כפולה, אתם מתבקשים שלא לערוך את הערך בטרם תוסר ההודעה הזו, אלא אם כן תיאמתם זאת עם מניח התבנית.
אם הערך לא נערך במשך שבוע ניתן להסיר את התבנית ולערוך אותו, אך לפני כן רצוי להזכיר את התבנית למשתמש שהניח אותה, באמצעות הודעה בדף שיחתו.

Servlet (סֶרוְוְלֵט; ברבים: Servlets או סרוולטים) היא טכנולוגיית צד-שרת מבוססת Java, המהווה את אחד מממשקי תכנות היישומים של Java Enterprise Edition. המפרט של Java Servlet מגדיר את האופן בו רכיב תוכנה הכתוב בשפת ג'אווה ורץ בצד השרת, יכול להגיב לבקשות המגיעות מצד הלקוח (לדוגמה, בקשות HTTP מסוג GET ו-POST). סרוולטים הם מחלקות Java, אשר עקרונית יכולות לתקשר על גבי כל פרוטוקול שרת-לקוח, אבל השימוש הנפוץ ביותר ב-Servlets הוא עם פרוטוקול ה-HTTP. לפיכך, המילה "Servlet" לבדה בדרך כלל משמשת בהקשר ל-"HTTP Servlet". סרוולט הוא אובייקט המקבל בקשה (request) ויוצר תגובה (response) על סמך אותה בקשה.

Servlets רצים על גבי שרת HTTP והם מהווים את המקבילה של ג'אווה לטכנולוגיות אחרות לתוכן ווב דינאמי, כדוגמת PHP ו-ASP.NET. בדרך כלל, התוכן שנוצר על ידי Servlets הם דפי HTML, אבל אלה יכולים להיות גם נתונים בצורות אחרות, כמו JSON ,XML, ועוד. Servlets יכולים לשמור מידע אודות המצב (state) בתוך משתני session, על פני טרנזקציות שרת רבות, על ידי שימוש ב-coockies או ב-URL rewriting.

על מנת לפרוס Servlet, נדרש שימוש ב-Web container (נקרא גם Servlet container) - רכיב בשרת HTTP המשמש לאינטראקציה עם ה-Servlets. רכיב זה אחראי על ניהול מחזור החיים של servlets, ממפה בין כתובת URL ל-Servlet ספציפי, ומוודא שהבקשה הנכנסת ב-URL היא בעלת הרשאות גישה מתאימות. ממשק תכנות היישומים Servlet המוכל ב-package בשם javax.servlet, מגדיר את האינטראקציות המצופות בין web container ל-servlet.

סרוולטים ניתנים ליצירה באופן אוטומטי מתוך (JavaServer Pages (JSP, על ידי ה-JavaServer Pages compiler. ההבדל בין Servlets ל-JSP הוא בכך שב-Servlets משבצים קוד HTML בתוך קוד Java, ואילו ב-JSP זה הפוך, שם קוד Java משובץ בתוך קוד HTML.

למרות שהשימוש הישיר ב-Servlets לצורך יצירת קוד HTML הפך לנדיר, תשתית התוכנה JavaServer Faces שהיא high-level יותר לעומת Servlets ומשמשת ליצירת יישומי רשת על פי מודל ה-MVC, עדיין משתמשת מפורשות בטכנולוגיית ה-Servlet לצורך טיפול שהוא יותר low-level בבקשות ותגובות. צורת שימוש ישנה יותר ב-Servlets, היא בצימוד לשימוש ב-JSP בתבנית הנקראת Model 2, שגם היא סוג של תבנית העיצוב MVC.

שימושים

השימושים הנפוצים ב-Servletes הם לצורך:

ראו גם

קישורים חיצוניים


ערך זה הוא קצרמר בנושא מחשבים. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.