سؤال

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

معظم الوقت كل شيء يعمل على ما يرام - بريمج يقوم بأي SQL فإنه يحتاج إلى يخزن النتائج في الفول JSP الوصول إليها.حيث لدينا مشكلة عندما السجلات نود أن الوصول المحددة من قبل التصميم.

أوضح مثال على أن تكون الصفحة الرئيسية - فإنه يحتاج إلى أن تكون لافتة للنظر و فعالة.لا يجب أن تكون موحدة مثل بقية الموقع.وهناك الكثير من العرضية واحد أو "الحالات الخاصة" هنا حيث نريد الاستعلام عن منتج معين السجل ، أو أيا كان.

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

أنا متأكد أنا أطلب المستحيل هنا يجب أن تعطي شيئا.سؤالي هو ماذا ؟

تحرير

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

هناك عدة طرق حيث الفعلي تعقيد الاستعلام يمكن أن تكون مغلفة في آخر الدرجة (العلامة المخصصة أو الفول) و JSP يمكن أن نسميها.هذا يبقى JSP بسيطة (الهدف 1) ولكن JSP لا يزال "اثار" الاستعلام تماما في وقت متأخر من العملية.

  • وقد حصلت على هذا خاطئ تماما و لا بأس أن تفعل هذا.
  • هو القاعدة العامة ، ولكن موافق تماما للقيام بذلك في هذا المقام.
  • قد واجهت مشاكل ؟

تحرير - على سبيل المثال

أتمنى هذا المثال سوف تساعد:

الصفحة الرئيسية ليست "قالب" مثل فئة/صفحات البحث - هو العرف مصممة للعمل بشكل جيد جدا مع القول تسويق صورة زوجين من منتج معين من الصور.ومع ذلك فإنه لا يكون لديهم معلومات عن تلك اثنين من المنتجات التي ينبغي أن تكون عليها حيوي (حتى الاسم ، والأهم من ذلك السعر) البقاء على وفاق مع ديسيبل.

بريمج لا يمكن معرفة المنتجات التي سوف تكون هذه لأنه لو مصمم يريد تغيير/إزالة/إضافة المزيد من أنه يجب أن يكون فقط لتحرير JSP (وربما XML واحدة الإجابة المقترحة).

هل كانت مفيدة؟

المحلول

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

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

توصيتي هي أن مصمم يخلق تكوين ملف XML الذي يحتوي على كل ما الحالات الخاصة التي تحتاج إليها الواجهة ، ولك بريمج يمكن قراءة ذلك, ثم تمر البكم الفاصوليا مرة أخرى إلى JSP.

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

نصائح أخرى

يبدو أنك بحاجة إلى أفضل الفصل بين عرض رمز قاعدة البيانات.يجب أن يكون لديك فصول منفصلة أن مجرد التعامل مع التفاعل مع قاعدة البيانات, و لا يعرفون شيئا عن العرض.

ثم يمكنك فقط إنشاء طريقة التي سوف ننظر المنتج id و العودة أن الفول حتى يمكن عرض سحب سمات يريد.

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

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

أنت لست على خطأ في التفكير في أن كل تطبيق المنطق يجب أن تكون كاملة قبل التقديم JSP.

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

في صفحة واحدة دورة الحياة, أجد أنه من الصعب أن نفهم لماذا يجب أن الاحتجاج قاعدة بيانات المكالمات من JSP.لم تكن الصفحة قد نشرت سابقا مع جميع بالشكل المطلوب المتغيرات لمساعدتك في العثور على البيانات في Servlet/مساعد الطبقات ؟

إذا كنت يمكن أن تعطي مثالا على الحالة سوف يكون من المفيد.

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

أنا لست متأكدا ما هو السؤال.أنا و أنت تريد أن يكون لديك sql البيانات من صفحات jsp ثم يمكنك وضعها في خاصية الملف و قراءة ملف الممتلكات من صفحة jsp.

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