متى يمكنك استخدام JSP و عندما بريمج?[مكررة]

StackOverflow https://stackoverflow.com/questions/101579

  •  01-07-2019
  •  | 
  •  

سؤال

هذا السؤال سبق الجواب هنا:

لدي طلب أن يرسل العميل إلى موقع آخر للتعامل مع المدفوعات.موقع آخر خارج العملاء ، وتدعو صفحة على الخادم لدينا في اسمحوا لنا أن نعرف ما هو الوضع الدفع.دعا صفحة التحقق من المعلمات التي تعطى عن طريق الدفع تطبيق التحقق لمعرفة ما إذا كانت الصفقة غير معروفة لنا.ثم تحديثات قاعدة البيانات لتعكس حالة.كل هذا يتم دون أي تفاعل مع العملاء.

اخترت شخصيا على تنفيذ هذه الوظيفة كما JSP لأنها أسهل أن مجرد إسقاط الملفات في نظام الملفات من تجميع حزمة الملف ثم إضافة إدخال إلى ملف التكوين.

النظر في وظائف الصفحة أود أن نفترض أن بريمج سيكون الخيار المفضل.السؤال(s) هي:

  • هو افتراض صحيح ؟
  • هل هناك سبب حقيقي لاستخدام بريمج على JSP?
  • ما هي تلك الأسباب ؟
  • هل كانت مفيدة؟

    المحلول

    JSP المترجمة إلى بريمج أول مرة يتم تشغيله.وهذا يعني أنه ليس هنالك وقت التشغيل الفرق بينهما.

    ومع ذلك ، فإن معظم تقليد استخدام سيرفلتس على وحدات تحكم JSPs عن وجهات النظر.منذ تحكم هي مجرد فئات java يمكنك الحصول على كامل أداة دعم (إنجاز قانون.... الخ) من كل ايديس.أن يعطي جودة أفضل و أسرع التنمية مرات مقارنة مع صفحات jsp.بعض أكثر تقدما IDE (IntelliJ IDEA الينابيع إلى الذهن) كبيرة JSP الدعم جعل هذا حجة عفا عليها الزمن.

    إذا كنت تريد أن تجعل الخاصة بك الإطار أو فقط مما يجعلها بسيطة صفحات jsp, ثم يجب أن لا تتردد في الاستمرار في استخدام صفحات jsp.لا يوجد الفارق في الأداء و إذا كنت تشعر صفحات jsp هي أسهل في الكتابة, ثم بكل الوسائل يستمر.

    نصائح أخرى

    صفحات jsp:لعرض البيانات للمستخدم.لا منطق الأعمال ينبغي أن تكون هنا, وبالتأكيد لا الوصول إلى قاعدة البيانات.

    سيرفلتس:التعامل مع مدخلات من شكل أو URL معين.عادة الناس سوف تستخدم المكتبة مثل الدعامات/الربيع على رأس سيرفلتس إلى البرمجة.بغض النظر عن بريمج فقط التحقق من صحة البيانات ، ومن ثم مررها على الخلفية طبقة رجال الأعمال تنفيذ (والتي يمكنك اختبار رمز الحالات ضد).يجب أن ثم وضع القيم الناتجة عن طلب أو الدورة استدعاء JSP لعرضها.

    نموذج:نموذج البيانات الذي يحمل البيانات المهيكلة أن الموقع مقابض.بريمج قد يستغرق الحجج ، ووضعها في نموذج ثم استدعاء طبقة رجال الأعمال.يمكن للنموذج ثم التفاعل مع الخلفية DAOs (أو السبات) للوصول إلى قاعدة البيانات.

    أي غير تافهة المشروع تنفيذ بنية MVC.هو بالطبع مبالغة تافهة وظائف.في هذه الحالة أود أن تنفيذ بريمج أن يسمى DAO إلى تحديث الحالة ، إلخ ، أو كل ما هو مطلوب.

    صفحات jsp ينبغي أن تستخدم في طبقة العرض ، سيرفلتس الأعمال المنطق الخلفية (عادة طبقة قاعدة البيانات) رمز.

    أنا لا أعرف أي سبب لماذا لا يمكنك استخدام JSP كما تصفون (فإنه يحصل المترجمة إلى بريمج قبل containter على أي حال), ولكن كنت على حق, الأسلوب المفضل جعله بريمج في المقام الأول.

    صفحات jsp هي اختصار كتابة بريمج.في الواقع هم ترجمت إلى بريمج جافا البرمجية قبل التجميع.(يمكنك التحقق من ذلك في ظل بعض هر subdir اللي تبونه أنا لا أتذكر اسم).

    أن تختار بين بريمج وهو JSP أنا استخدم قاعدة بسيطة:إذا كانت الصفحة تحتوي على أكثر الكود من كود جافا ، انتقل JSP, وإلا مجرد كتابة بريمج.في العام الذي يترجم تقريبا إلى:استخدام صفحات jsp من أجل عرض المحتوى و servlets من أجل السيطرة, التحقق من صحة, الخ.

    كما أن من الأسهل تنظيم بنية التعليمات البرمجية داخل بريمج لأنه يستخدم عادي جافا الدرجة الجملة.صفحات jsp تميل إلى أن تكون أكثر متجانسة ، على الرغم من أن من الممكن إنشاء الطرق داخل ذلك الحين.

    هناك 2 جميلة القواعد البسيطة:

    1. كلما أردت كتابة كود جافا (منطق الأعمال) ، وذلك في فئة Java (لذلك ، بريمج).
    2. كلما أردت كتابة HTML/CSS/JS التعليمات البرمجية (عرض/قالب المنطق) ، أن تفعل ذلك في JSP.

    ذات السؤال:

    JSP هي أساسا العلامات التي يحصل تلقائيا بتجميع إلى بريمج طريق بريمج الحاوية ، لذا فإن تجميع الخطوة سوف يحدث في كل من الحالات.هذا هو السبب في بريمج الحاويات التي تدعم التخطيط الاستراتيجي المشترك يجب أن يكون كامل JDK المتاحة بدلا من أن يحتاج فقط JRE.

    لذلك السبب الرئيسي JSP هو الحد من كمية من التعليمات البرمجية المطلوبة لعرض الصفحة.إذا لم يكن لديك لجعل صفحة ، بريمج هو أفضل.

    أعرف أن هذا ليس الجواب شعبية اليوم ، ولكن:عندما أكون تصميم التطبيق من الصفر, أنا دائما استخدام صفحات jsp.عندما المنطق هو غير تافهة ، أنا خلق العاديين فئات Java للقيام بهذا العمل أن أدعو من JSP.لم يفهم الحجة التي يجب عليك استخدام سيرفلتس لأن نقية جافا الطبقات ، هم أكثر للصيانة.JSP يمكن الاتصال بسهولة نقية جافا الفئة و بالطبع عادية جافا لا تستعصي على أي بريمج.أنه من الأسهل على شكل صفحة في JSP لأنه يمكنك وضع جميع العلامات في خط بدلا من الاضطرار إلى إرسال مجموعة من println هو.ولكن أكبر ميزة من صفحات jsp هو أنه يمكنك مجرد قطرة منها في دليل وأنها يمكن الوصول إليها مباشرة:أنت لا تحتاج إلى الفوضى مع إنشاء علاقات بين URL ملف فئة.الأمن هو التعامل معها بسهولة من خلال وجود كل JSP تبدأ مع تحقق الأمن ، والتي يمكن أن تكون مكالمة واحدة البيان ، لذلك ليس هناك حاجة إلى وضع الأمن إلى إرسال طبقة.

    السبب الوحيد الذي أستطيع أن أرى أن استخدام بريمج هو إذا كنت في حاجة الى مجمع رسم الخرائط بين عناوين الناتجة التنفيذ الفئة.مثل, إذا كنت ترغب في دراسة URL ومن ثم استدعاء واحدة من العديد من الفئات اعتمادا على حالة جلسة العمل أو بعض من هذا القبيل.شخصيا لم أكن أريد أن أفعل هذا ، تطبيقات رأيت أن تفعل ذلك تميل إلى أن يكون من الصعب الحفاظ على لأنه قبل أن تبدأ حتى إجراء تغيير لديك لمعرفة ما هو رمز حقا يجري تنفيذها.

    معظم تطبيقات جافا في الوقت الحاضر بناء على نمط MVC...في وحدة تحكم الجانب (بريمج) تطبيق منطق الأعمال.بريمج تحكم عادة إحالة الطلب إلى jsp التي سوف تولد الفعلية html استجابة (رأي في MVC).الهدف هو فصل المخاوف...الآلاف من الكتب التي كتبت حول هذا الموضوع.

    في العمارة MVC, servlets تستخدم وحدة تحكم JSPs كما عرض.ولكن على حد سواء من الناحية الفنية نفس.JSP سيتم ترجمتها إلى بريمج ، إما في وقت الترجمة (كما في JDeveloper) أو عند الوصول إليها لأول مرة (كما في هر).حتى الفرق الحقيقي هو في سهولة الاستخدام.أنا متأكد من أنه سيكون لديك صعوبة في تقديم صفحة HTML باستخدام بريمج;ولكن عكس الحس, سوف تجد في الواقع من السهل جدا أن رمز حتى المنطق المعقدة إلى حد ما جميع في الداخل JSP (مع مساعدة من بعض أعدت مساعد من الدرجة ربما).PHP الرجال القيام بذلك في كل وقت.وهكذا يقعون في الشرك من خلق السباغيتي رموز.لذلك الحل لمشكلتك:إذا وجدت أنه من الأسهل إلى رمز في JSP و لن تنطوي على الكثير من التعليمات البرمجية, لا تتردد في التعليمات البرمجية في JSP.وإلا باستخدام بريمج.

    اتفق مع كل النقاط أعلاه حول الاختلافات بين صفحات jsp و Servlets, ولكن هنا بضعة اعتبارات إضافية.يمكنك كتابة:

    لدي طلب أن يرسل العملاء إلى موقع آخر للتعامل مع المدفوعات.موقع آخر خارج العميل المكالمات صفحة على موقعنا الخادم للسماح لنا أن نعرف ما هو وضع هو الدفع.دعا الصفحة التحقق من المعايير التي تعطى قبل تطبيق الدفع والشيكات لمعرفة ما إذا كانت الصفقة معروفة لنا.ومن ثم التحديثات قاعدة بيانات تعكس حالة.هذا كل ذلك دون أي تفاعل مع العملاء.

    التطبيق الخاص بك هو استهلاك خدمة الدفع من تطبيق آخر.الحل هو هشة لأنه إذا كان خدمة الدفع في تطبيق آخر التغييرات التي تكسر صفحة JSP.أو إذا كنت ترغب في تغيير إعدادات تطبيق سياسات الدفع ، ثم الصفحة الخاصة بك سوف تضطر إلى تغيير.الجواب القصير هو أن التطبيق الخاص بك يجب أن يكون طويلا تطبيق خدمة الدفع عبر خدمة ويب.لا بريمج ولا صفحة JSP هو المكان المناسب لوضع استهلاك المنطق.

    ثانيا ، على غرار معظم الاستخدامات سيرفلتس/صفحات JSP في السنوات القليلة الماضية قد وضعت داخل إطار إطار مثل الربيع أو الدعامات.أنصح الربيع ، كما أنه يقدم لك كومة كاملة من ما تحتاجه من صفحات الملقم إلى خدمة ويب بوابة المنطق DAOs.إذا أردت أن تفهم الصواميل والمسامير من الربيع ، أود أن أوصي الربيع في العمل.إذا كنت بحاجة إلى فهم أفضل لكيفية الطبقة مؤسسة العمارة مكتوب في لغة مثل جافا (أو C#), أنصح فاولر أنماط من تطبيق المشاريع المعمارية.

    نعم يجب أن يكون هذا بريمج.JSP قد يكون من الأسهل إلى تطوير ، ولكن بريمج سوف يكون من الأسهل للحفاظ على.فقط تخيل الحاجة إلى إصلاح بعض عشوائي علة في 6 أشهر و أحاول أن أتذكر كيف يعمل.

    في بريمج جافا HTML العلامات embeded في جافا الترميز.في JSP جافا codings هي embeded في علامات HTML.

    كبير طلب مشكلة كبيرة بريمج معقدة إلى قراءة وفهم ، التصحيح ، الخ بسبب unreadability من embeding أكثر علامات html داخل جافا الترميز..لذلك نستخدم jsp.في jsp فمن السهل أن نفهم,التصحيح,الخ.

    الشكر والتحيات ، Sivakumar.ي

    أعتقد أن ما يصل إلى لك ؟ لأن JSP هو جافا داخل HTML و هو بريمج جافا التي يمكن القيام HTML داخل

    هممم...بريمج أكثر sercure من jsp لأنه إذا تقدم إلى بريمج و إلى الأمام إلى آخر JSP لا يوجد امتداد الملف تظهر أيضا لا أستطيع أن أرى ماذا الصفحة..

    ولكن ميزة JSP يمكنك البرمجية بسهولة.

    مرخصة بموجب: CC-BY-SA مع الإسناد
    لا تنتمي إلى StackOverflow
    scroll top