[مقال خاص في IT168] نحن نعلم أن JSP (صفحات JavaServer) هي معيار تكنولوجيا صفحات الويب الديناميكي. Servlets هي إجابة تقنية Java لبرمجة CGI.
هناك العديد من خوادم الويب التي تدعم JSP/Servlet، يعد اختيار خادم ويب مناسب أمرًا مهمًا جدًا لإنشاء موقع ويب JSP. تشمل خوادم الويب الأكثر شهرة: Allaire JRun، وApache Tomcat، وBEA Weblogic Application Server، وIBM WebSphere Application Server، وiPlanet Web Server، وJavaServer Web Development Kit (JSWDK) وJava Web Server، وما إلى ذلك.
عند إنشاء موقع ويب JSP، يمكن استخدام JSWDK كخادم ويب للتعلم وتصحيح الأخطاء. بشكل عام، يمكن لمواقع الويب الصغيرة والمتوسطة استخدام Apache+Tomcat كخادم ويب يمكن لمواقع الويب الكبيرة على مستوى المؤسسات استخدام IBM WebSphere Application Server، BEA يعمل خادم تطبيق Weblogic وSUN iPlanet Web Server وما إلى ذلك كخوادم ويب.
1. استخدم JSP مباشرة
بالنسبة لأصغر موقع ويب، يمكن استخدام JSP مباشرةً لإنشاء صفحات ويب ديناميكية. بالنسبة لنموذج التطوير هذا، يمكن عمومًا وضع جميع أجزاء المعالجة الديناميكية في نصوص JSP، تمامًا كما يتم استخدام PHP أو ASP بشكل عام لإنشاء صفحات ويب ديناميكية.
2. جي إس بي + جافا بينز
تواجه المواقع متوسطة الحجم استعلامات قاعدة البيانات وإدارة المستخدم وكمية صغيرة من منطق الأعمال التجارية. ستساعد إضافة تقنية JAVABEANS إلى JSP في تطوير هذا الموقع متوسط الحجم. باستخدام JAVABEANS، سيكون من السهل إكمال المهام مثل الاتصال بقاعدة البيانات، وتسجيل دخول المستخدم وتسجيل خروجه، وتغليف منطق الأعمال التجارية، كما هو موضح في الشكل 1.
الشكل 1 |
3.JSP+JavaBeans+Servlet
عند استخدام ASP أو PHP لبناء موقع ويب ديناميكي، توجد علاقة منطقية بين موقع الويب وصفحة العرض الخاصة بموقع الويب، وليس من السهل فصلها. في موقع الويب الذي يحتوي على علاقات منطقية معقدة للغاية، بمساعدة التفاعل الجيد بين Servlet وJSP ومساعدة JavaBeans، يمكن وضع البنية المنطقية الكاملة لموقع الويب في Servlet، ويمكن وضع مخرجات الصفحة الديناميكية في صفحة JSP. في طريقة التطوير هذه، يمكن أن يحتوي موقع الويب على واحد أو أكثر من Servlets الأساسية للتعامل مع منطق موقع الويب، وإكمال طلب العميل (عادةً متصفح ويب) عن طريق استدعاء صفحة JSP. في نموذج J2EE، يمكن استبدال وظيفة Servlet هذه بـ EJB، كما هو موضح في الشكل 2.
الشكل 2 |
4. نموذج تطوير J2EE
في نموذج تطوير J2EE، يمكن تقسيم النظام بأكمله إلى ثلاثة أجزاء رئيسية (كما هو موضح في الشكل 3):
الشكل 3 |
* المراقب المالي. وحدة التحكم مسؤولة عن منطق الموقع بأكمله. يتم استخدامه لإدارة تفاعلات المستخدم مع طرق العرض. في J2EE، يتم تنفيذ وظيفة التحكم بشكل عام بواسطة SessionBeans في Servlets وJavaBeans وEnterprise JavaBeans.
* نموذج. النموذج هو جزء منطق أعمال التطبيق، والدور الرئيسي لهذا الجزء هو Enterprise JavaBeans بمساعدة تقنية المكونات القوية لـ EJB والتحكم في الإدارة على مستوى المؤسسة، يمكن للمطورين بسهولة إنشاء وحدات منطق أعمال قابلة لإعادة الاستخدام.
يمكن لنظام تشغيل موقع الويب الذي تم إنشاؤه بواسطة JSP اختيار النظام الأساسي Unix أو Linux أو Windows. يمكن أن يكون خادم الويب تجاريًا أو يستخدم برامج خادم مجانية مثل Apache وTomcat. يمكن لقاعدة البيانات الخلفية اختيار Oracle أو Sybase أو DB2 أو Informax أو MySQL. الخ وفقا للحالة الفعلية.
يمكن استخدام كل من Apache وTomcat كخوادم ويب مستقلة. Apache قوي وفعال، لكنه لا يدعم JSP وserlets. Tomcat هو خادم JSP تم تطويره بشكل مشترك بواسطة Sun وApache، وقد أصبح الآن محرك Servlet وJSP الرئيسي في Apache. تم تصميم Tomcat ليتم تنفيذه كخادم مستقل، على عكس Jserv المرتبط بـ Apache، بحيث يمكنه استخدام إمكاناته في servlets بدلاً من HttpServlet. Tomcat هو برنامج Java، لذا طالما أن لديك JDK، يمكنك استخدامه دون النظر إلى النظام الأساسي لنظام التشغيل.
باعتباره امتدادًا لخادم الويب، فإن خادم Tomcat به بعض المشكلات التي تحتاج إلى شرح: Tomcat ليس بنفس سرعة Apache عند معالجة الصفحات الثابتة؛ Tomcat ليس قابلاً للتكوين مثل Apache، وليس بنفس قوة Apache. بناءً على الأسباب المذكورة أعلاه، يستخدم موقع الويب الحقيقي Apache كخادم ويب لخدمة طلبات الصفحة الثابتة لموقع الويب ويستخدم خادم Tomcat كمكون إضافي Servlet/JSP لعرض الصفحات الديناميكية لموقع الويب.
يتمتع استخدام بنية مثل Apache+tomcat بمزايا أكثر وضوحًا، والتي تنعكس بشكل أساسي في تحسين قابلية التوسع والأمان. الميزة الرئيسية لهذا النوع من المواقع هي أنه قد يتم إنشاء كل صفحة ديناميكيًا، لكن الجزء الرئيسي من البيانات يظل ثابتًا (على سبيل المثال، صور GIF وJPG وPNG ووسائط البث المختلفة وما إلى ذلك). هو قابلية التوسع والأمن.