menusearch
javapro.ir

JSP چیست و چه کاربردی در جاوا دارد؟

جستجو
چهارشنبه ۵ آبان ۱۴۰۰ | ۲۰:۳۴:۲۳
۱۳۹۹/۱۱/۱ چهارشنبه
(2)
(0)
JSP چیست و چه کاربردی در جاوا دارد؟
JSP  چیست و چه کاربردی در جاوا دارد؟

کاربرد JSP در زبان جاوا چیست؟

 

JavaServer Pages (JSP) یک فناوری استاندارد جاوا است که شما را قادر می‌سازد صفحات پویا و داده محور را برای برنامه‌‌‌‌های وب جاوا خود بنویسید. JSP در بالای مشخصات Java Servlet ساخته شده است. این دو فناوری معمولاً با هم کار می‌کنند، خصوصاً در برنامه‌‌‌‌های وب قدیمی جاوا

 

 

 

JSP چیست؟ آشنایی با صفحات JavaServer
JavaServer Pages که یکی از اصلی ترین فناوری‌‌‌‌های وب جاوا است، همچنان به طور گسترده ای برای ساخت صفحات وب پویا که به Java backend متصل می‌شوند، استفاده می‌شود. (JSP) یک فناوری استاندارد جاوا است که شما را قادر می‌سازد صفحات پویا و داده محور را برای برنامه‌‌‌‌های وب جاوای خود بنویسید. JSP در بالای مشخصات Java Servlet ساخته شده است. این دو فناوری معمولاً با هم کار می‌کنند، خصوصاً در برنامه‌‌‌‌های وب قدیمی جاوا. از دیدگاه کدگذاری، بارزترین تفاوت بین آنها این است که با servlets شما کد جاوا را می‌نویسید و سپس علامت گذاری سمت کاربر مانند (HTML) را در آن کد قرار می‌دهید، در حالی که با JSP شما با اسکریپت سمت کاربر یا نشانه گذاری شروع می‌کنید، سپس برچسب‌‌‌‌های JSP را برای اتصال صفحه خودتان به صفحات Java backend تعبیه می‌کنید.

 

 

 

 

 

مباحث پرکاربرد و مهم زبان جاوا رو به صورت رایگان آموزش ببین

 

 

 

 

 

 


JSP همچنین با JSF (JavaServer Faces)، مشخصات جاوا برای ساخت برنامه‌‌‌‌های وب MVC(مدل-مشاهده-کنترل کننده) ارتباط نزدیک دارد. JSP نسبت به JSF یک فناوری نسبتاً ساده و قدیمی است که استانداردی برای چارچوب های وب جاوا مانند Eclipse Mojarra، MyFaces و PrimeFaces است. اگرچه دیدن JSP که به عنوان پیشانی برای برنامه‌‌‌‌های قدیمی JSF استفاده می‌شود، امری غیرمعمول نیست، اما Facelets فناوری نمای ترجیحی برای پیاده سازی‌‌‌‌های مدرن JSF است. اگرچه JSP ممکن است اولین انتخاب شما برای ایجاد صفحات وب پویا نباشد، اما این یک فناوری اصلی وب جاوا است. ساخت صفحات JSP نسبتاً سریع و آسان است و با یک سرویس دهنده جاوا در یک ظرف سرولت مانند تامکت با یک سرویس ارتباط برقرار می‌کنند. در برنامه‌‌‌‌های تحت وب جاوا با JSP روبرو خواهید شد، و گاه گاهی ممکن است برای ساخت صفحات وب جاوا ساده و پویا مفید واقع شوید. به عنوان یک توسعه دهنده جاوا، حداقل باید با JSP آشنا باشید.

 

 

 

چرخه حیات jsp در زبان برنامه نویسی جاوا
چرخه حیات JSP

 

 


JSP در JakartaEE
پس از انتشار Java EE 8، اوراکل سرپرستی Java Enterprise Edition (Java EE) را به بنیاد Eclipse منتقل کرد. با پیشرفت، پلتفرم سازمانی جاوا با نام Jakarta EE تغییر نام داده است. همراه با مشخصات Java Servlet و JSF، JSP یکی از فناوری‌‌‌‌های وب جاوا است که برای پشتیبانی و ارتقا مداوم در Jakarta EE ارائه شده است.

 

 

 

نوشتن صفحات JSP
یک صفحه ساده JSP (.jsp) شامل نشانه گذاری HTML است که با برچسب‌‌‌‌های JSP تعبیه شده است. هنگامی که پوشه در سرور پردازش می‌شود، HTML به عنوان نمای برنامه، یک صفحه وب ارائه می‌شود. از برچسب‌‌‌‌های جاسازی شده JSP برای فراخوانی کد و داده‌‌‌‌های سمت سرور استفاده خواهد شد. نمودار در شکل 1 تعامل بین HTML، JSP و سرور برنامه وب را نشان می‌دهد.

 

 


لیست1. یک صفحه ساده JSP

 

<html>
<body>
  <p>${2 * 2} should equal 4</p>
</body>
</html>


جی اس پی در زبان جاوا چیست؟

 


JSP در ظرف سرولت
صفحات JSP باید درون یک ظرف سرویس دهنده جاوا مستقر شوند. به منظور استقرار یک برنامه وب جاوا بر اساس JSP و servlets، فایل‌‌‌‌های jsp. ، کد جاوا و فراداده برنامه خود را در یک فایل war. بسته بندی می‌کنند، این یک فایل zip ساده با ساختار معمولی برای برنامه‌‌‌‌های وب است
.


هنگامی که JSP را در ظرف سرولت خود بارگیری کردید، در یک سرولت کامپایل می‌شود. JSP ها و سرویس‌‌‌‌های جاوا از ویژگی‌‌‌‌های مشابهی برخوردار هستند، از جمله توانایی دسترسی و پاسخ به اشیا درخواست کننده. Apache Tomcat x9 پیاده سازی مرجع برای Servlet 4.0 و JSP 2.3 است.

 

 

بررسی اجمالی JSP در زبان جاوا
شکل 1. بررسی اجمالی JSP

 

 


ظرف Servlet در مقابل سرور برنامه
در دنیای جاوا ، یک سرویس servlet به عنوان وب سرور شناخته می‌شود .یک ظرف servlet تعاملات درخواست و پاسخ را کنترل می‌کند و به این تعاملات اجازه می‌دهد تا با زیر مجموعه ای از قابلیت‌‌‌‌های سازمانی جاوا برای برنامه‌‌‌‌های وب ارتباط برقرار کنند. یک سرور برنامه جاوا شامل سرویس servlet به عنوان بخشی از پشته سازمانی کامل Java، از جمله EJB، JPA، JMS و موارد دیگر است.

 

 

 

نمونه برنامه کاربردی برای JSP
ما برای شروع کار با JavaServer Pages از یک نمونه برنامه در Tomcat استفاده خواهیم کرد. اگر Tomcat را قبلاً نصب نکرده اید، به صفحه بارگیری Tomcat بروید و نصب Tomcat را برای سیستم عامل خود انتخاب کنید.
می توانید Tomcat را به عنوان سرویس Windows نصب کنید یا آن را از خط فرمان با
/bin/catalina.sh start یا /bin/catalina.bat اجرا کنید. در هر صورت، تامکت را راه اندازی کنید، سپس به localhost: 8080 بروید تا صفحه خوش آمدگویی تامکت را در شکل 2 ببینید.

 

صفحه خوش آمد گویی تامکت
شکل 2. صفحه خوش آمد گویی تامکت

 

 

 

درخواست پارامترها
اشیا ضمنی، اشیا-داخلی هستند که از طریق صفحه JSP قابل دسترسی هستند. به عنوان یک توسعه دهنده صفحه وب، از این اشیا برای ایجاد دسترسی به مواردی مانند پارامتر‌‌‌‌های درخواست، که داده هایی است که هنگام ارسال درخواست HTTP از مرورگر ارسال می‌شود، استفاده خواهید کرد. URL مرورگر را برای اشیا ضمنی در نظر بگیرید:


http://localhost:8080/examples/jsp/jsp2/el/implicit-objects.jsp?foo=bar


foo = bar؟ پارامتر است، و می‌توانید آن را در خروجی صفحه وب مشاهده کنید، جایی که جدول عبارت "EL" را نشان می‌دهد و مقدار "’’bar" است. برای آزمایش این، URL را به
http: // localhost: 8080 / samples / jsp / jsp2 / el / implicite-objects.jsp؟ foo = zork تغییر دهید، Enter را بزنید، و تغییر را در خروجی مشاهده خواهید کرد.


این مثال مقدمه ای بسیار ساده برای استفاده از برچسب‌‌‌‌های JSP برای دسترسی به پارامتر‌‌‌‌های درخواست سمت سرور است. در این حالت، صفحه JSP از شی object داخلی (ضمنی) به نام param برای دسترسی به پارامتر‌‌‌‌های درخواست برنامه وب استفاده می‌کند. شی param در داخل نحو بیان JSP موجود است که در لیست 1 مشاهده کردید.


در آن مثال، از عبارتی برای انجام ریاضیات استفاده کردیم: {2 * 2}$ که خروجی 4 است.
در این مثال، از عبارت روبرو برای دسترسی به یک شی و فیلد در آن شی استفاده شده است: ${param.foo}.

 

 

 

توابع JSP
اگر با HTML آشنا هستید، لیست 2 باید کاملاً آشنا به نظر برسد. شما عناصر HTML مورد انتظار <td> را دارید و به دنبال آن {}$ دستور JSP در لیست 1 آورده شده است. اما مقدار param.foo را ملاحظه کنید:

 

param.foo: <td>${fn:escapeXml(param["foo"])}&nbsp;</td>

 

یک تابع JSP است.

 


یک عملکرد JSP یک بخش از قابلیت استفاده مجدد را دربر می‌گیرد. در این حالت، عملکرد فرار از XML است. JSP توابع مختلفی را ارائه می‌دهد و همچنین می‌توانید خودتان توابع ایجاد کنید. برای استفاده از یک تابع، کتابخانه آن را به صفحه JSP خود وارد می‌کنید، سپس با این تابع تماس می‌گیرید.


در لیست 2، تابع EscapeXML با خط موجود است:

 

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>


نحو کاملاً واضح است: توابع مورد نیاز را وارد کرده و پیشوندی را به آنها اختصاص می‌دهد)در این حالت "Fn"(که می‌تواند در تمام عبارات استفاده شود.

 

 

 

کتابخانه برچسب استاندارد JSP (JSTL)
خط import در لیست 2 با taglib نامیده می‌شود که مخفف کتابخانه برچسب یا (در این مورد) JSP Standard Tag Library (JSTL) است. کتابخانه‌‌‌‌های برچسب بیت‌‌‌‌های قابل استفاده مجدد را برای JSP تعریف می‌کنند. JSTL یک کتابخانه برچسب استاندارد است که شامل مجموعه ای از taglibs است که با هر سرویس و اجرای JSP از جمله Tomcat ارسال می‌شود.


کتابخانه "توابع" فقط یکی از برچسب‌‌‌‌های موجود در JSTL است.

 

 

آشنایی با JSP در زبان برنامه نویسی جاوا
کتابخانه tag‌‌‌‌های
JSTL

 

 

 

ایمن سازی صفحات JSP


یک برچسب نمونه ای از کتابخانه اصلی است:

 

<c:out value = "${'<div>'}"/>

 

که برچسب <div> را با XML خارج کرده است. این عملکرد مهم است زیرا خروجی مستقیم محتوا به یک صفحه وب از طریق {variable} $ را برای حملات تزریق اسکریپت باز می‌کند. این عملکرد ساده برای محافظت از صفحات وب در برابر چنین حمله هایی استفاده می‌شود.


کتابخانه اصلی همچنین شامل برچسب‌‌‌‌های مختلفی برای تکرار و کنترل جریان مانند مدیریت (IF / ELSE) است.

 

 

 

طرح یک برنامه وب JSP
تامکت از طرح استاندارد صفحات Java servlet و JSP پیروی می‌کند. ساختار کلی پوشه ای با نام برنامه است که در داخل دایرکتوری Tomcat / webapps مستقر شده است.

 

 

 

نتیجه
JPS یک فناوری کاملاً شناخته شده و متنوع برای توسعه نما‌‌‌‌های برنامه وب جاوا است. صفحات JSP همراه با سرویس دهنده ها بسیار قدرتمند هستند و دسترسی به کل قابلیت‌‌‌‌های جاوا را فراهم می‌کنند. اگرچه ممکن است JSP اولین انتخاب شما برای توسعه یک برنامه وب مدرن جاوا نباشد، اما در برنامه‌‌‌‌های قدیمی با صفحات JSP روبرو خواهید شد. همچنین برای برنامه‌‌‌‌های ساده تر، جایی که می‌خواهید سریع HTML خود را به کد جاوا سمت سرور متصل کنید، انتخاب خوبی است. برچسب‌‌‌‌های JSTL قادر به مدیریت بیشتر نیاز‌‌‌‌های برنامه وب هستند و کتابخانه‌‌‌‌های شخص ثالث این قابلیت را برای فناوری‌‌‌‌های خاص گسترش می‌دهند و از موارد استفاده می‌کنند.

 

 

نظرات کاربران
*نام و نام خانوادگی
* پست الکترونیک
* متن پیام

بستن
*نام و نام خانوادگی
* پست الکترونیک
* متن پیام

0 نظر
گفتگو را شروع کنید
رزو مشاوره و تدریس خصوصی برنامه نویسی و سفارش انواع پروژه‌‌‌‌های برنامه نویسی