بعد أن أطلقت Microsoft ASP (ActiveServerPage) ، فإنه محبوب من قبل غالبية الأشخاص بميزاتها القوية وسهلة إلى -Learn. ومع ذلك ، فإنه لديه مشكلة شائعة لمنتجات Microsoft ولا يمكن استخدامها إلا تحت نظام Windows. يدرك JSP (صفحات خادم JAVA) التي طورتها شركة Sun Company تحت أساس Java فصل الصفحات الديناميكية والصفحات الثابت الإنترنت على الإنترنت. من أجل استخدام غالبية المبرمجين الذين يطبقون ASP ، يمكنهم تعلم JSP بسرعة. أوجه التشابه والتشابهات هي كما يلي: أدناه:
1. الهيكل
JSP و ASP متشابهان في الهيكل. يفصل JSP نموذج التعبير لصفحة الويب مع منطق الكود لجانب الخادم. كصفحة JSP لعملية الخادم ، تم تحويلها لأول مرة إلى servlet (برنامج Java على جانب الخادم).
Servlet يدعم طلب واستجابة بروتوكول HTTP. عندما يتم تحويل JSP إلى رمز Java نقي. عندما يطلب العديد من المستخدمين صفحة JSP في نفس الوقت ، قم بتطبيق مؤشرات الترابط التي تم تأسيسها للرد على الطلب. تتم إدارة هذه المواضيع من خلال عملية خادم الويب ، على غرار وظيفة Manager لخيط ASP. مقارنة مع CGI لكل طلب لإنشاء عملية ، فإن هذه الطريقة أكثر كفاءة.
2. الأداء والمنصة غير ذات صلة
بالمقارنة مع اللغات مثل C ++ و VB ، تعتبر Java لغة أقل كفاءة ، ولكن يتم تبادلها من أجل التضحية بالكفاءة. رمز تجميع Java هو رمز بايت ، يتم شرحه بواسطة جهاز افتراضي Java VirtualMachine (JVM) على نظام التشغيل.
يمكن ترحيل رمز البايت على جميع المنصات دون أي تغييرات. تميل برمجة platform المتقاطعة إلى اعتماد "المراكز الدنيا" لجميع أنظمة التشغيل ، خاصة عند استخدام واجهة رسومية (لا تتطلب Servlets أي واجهة رسومية).
Servlets أسرع من برامج Java التقليدية (التطبيقات ، Javaapp) ، لأنها تعمل على الخادم ولا تحتاج إلى تحميل واجهة المستخدم الرسومية الثقيلة (عدد قليل جدًا من واجهة المستخدم الرسومية من HTML). بالإضافة إلى ذلك ، يتم تنفيذ رمز البايت للخدمات فقط عند طلب العميل ، لذلك على الرغم من أنه سيكون هناك بضع ثوان من وقت التحميل عندما يتم استدعاء الخدمة لأول مرة ، فإن الطلب اللاحق سريع للغاية ، لأن الخادم قد تم تخزينه مؤقتًا servlets الجري.
يحتوي خادم JSP الحالي 1 1 1 1 1 1 1 1 1 أسرع 1 1 1 1 1 1 أسرع 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1. إلى 2 كميات.
3. إدارة الجلسة
من أجل تتبع حالة تشغيل المستخدم ، كائن جلسة تطبيق ASP. يستخدم JSP كائنًا يسمى HTTPSESSINT لتحقيق نفس الوظيفة. يتم حفظ معلومات الجلسة على الخادم ، ويتم حفظ معرف الجلسة في ملف تعريف الارتباط للعميل. إذا حظر العميل ملف تعريف الارتباط ، فيجب أن يتم معرف الجلسة وراء عنوان URL.
تعيين الجلسة عمومًا ، وقت انتهاء صلاحية 30 دقيقة على الخادم ، وتفشل تلقائيًا بعد توقف العميل عن النشاط. لا يمكن أن تكون المعلومات التي تم حفظها واسترجاعها في الجلسة هي أنواع البيانات الأساسية ، مثل int ، double ، وما إلى ذلك ، ولكن يجب أن تكون الكائن المقابل (كائن) Java.
4. إدارة التطبيق
في بعض الأحيان ، يحتاج الخادم إلى إدارة المعلمات التي تواجه التطبيق بأكمله حتى يتمكن كل عميل من الحصول على نفس قيمة المعلمة. مثل Session ، يستخدم ASP كائن التطبيق ويستخدم JSP كائن ServiceContext ، طريقة التشغيل هي نفسها الجلسة.
5. خواصينيكولود
ASP و JSP هي نفسها على الخادم. يمكن لـ ASP و JSP دعم الخادم (IIS ، Apache) الذي يدعم هذه الميزة لتنفيذ الملفات الافتراضية. ولكن تم تضمين JSP في نتائج الصفحة الديناميكية ، وليس الرمز نفسه الذي يحتوي على الملف نفسه. عندما تكون الملفات التي تحتويها على خادم آخر ، فهي ميزة فعالة للغاية بدون أي رمز وكائن.
6. مكون جافا: جافابانز
Javabeans هي بيانات كائن لبعض العبوات التي تكمل الوظائف المحددة مسبقًا. تتم مقارنة Javabeans و JSP بـ COM و ASP على النحو التالي:
غالبًا ما يتم استخدام كائنات com لتغليف منطق العمل وإكمال حسابات عالية الكثافة لصفحات ASP. يجعل المكون القابل لإعادة الاستخدام الصفحة بسيطة وسريعة ، لأن المكون يتكون من لغة ترجمة (C ++ ، VB) ، وليس لغة البرمجة النصية المفسرة (VBScript ، JScript).
لا يمكن تطوير Javabeans إلا بلغة Java ، ويمكن تطوير COM بأي لغة (بما في ذلك Visual J ++) تلبي نموذج الكائن القياسي. من ناحية أخرى ، من الأسهل تطوير Javabeans ، لأنه بمجرد إتقان Java ، من السهل جدًا فهم بنية Javabeans. نظرًا لتعقيد COM ، فأنت بحاجة إلى الكثير من التعلم والتدريب إلى Master-toved إذا كان لديك أساس C ++ و VB ، فأنت بحاجة إلى جهود إضافية.
يجب تسجيل مكون COM على الخادم. لا يحتاج Javabeans إلى التسجيل. يمكن أن تنشئ مكتبة Javabeans كاملة تلبي منطق العمل ، مما يسمح للموظفين غير البرمجيين باستخدام المكتبات لتطوير مواقع الويب الديناميكية.
يمكن للفاصوليا إدارة اتصالات قاعدة البيانات على جانب الخادم.
يتوافق Javabeans مع نموذج كائن هيكلي: يتم إعداد كل حبة بواسطة مُنشئ مع مُنشئ بدون معلمات معلمة. لتعيين سمات Build -in of Bean ، يجب عليك استخدام علامة setProperty مع اسم سمة. إذا كان من الممكن تعيين سمة ، يحتاج Bean إلى طريقة setxxxx ، ويستبدلها XXXX باسم السمة الفعلي.
7. JSP وقاعدة البيانات
يستخدم ASP ODBC للاتصال بقاعدة البيانات من خلال ADO ، وتوصيل Java قاعدة البيانات التي تسمى تقنية JDBC. تتطلب قاعدة البيانات المستهدفة برنامج تشغيل JDBC-عذرًا لقاعدة بيانات وجافا ، بحيث يمكن لـ Java الوصول إلى قاعدة البيانات بطريقة قياسية. لا يستخدم JDBC مصدر بيانات الخادم. طالما أن هناك برنامج تشغيل JDBC ، يمكن لـ Java الوصول إلى قاعدة البيانات. إذا لم يكن لدى قاعدة بيانات معينة برنامج تشغيل JDBC ، ولكن فقط برنامج تشغيل ODBC ، يوفر Java جسر JDBC-ODBC لتحويل مكالمات JDBC إلى مكالمات ODBC. جميع مجمعي Java لديهم جسر JDBC-ODBC مجاني. من الناحية النظرية ، يمكن للجسور الوصول إلى أي منتجات قاعدة بيانات شائعة.
ختاماً:
يتم تعريف نموذج JSP بعد ASP. في الوقت نفسه ، تستخدم JSP لغة جافا مرنة وقوية ، وليس لغة البرمجة النصية غير الفعالة. لا يمكن لمطوري ASP استخدام التكنولوجيا إلا بناءً على منصة Windows ، في حين أن Java و JSP هما platform.