يتم استخدام هذه الخاصية Struts.ObjectFactory لتوضيح مصنع إنشاء تجمع الكائنات من Struts2. STRUTS2 لديها أيضا تجمع الكائنات الخاصة به. تمامًا مثل الربيع ، يمكنك الرجوع إلى الكائنات الموجودة في تجمع الكائنات في ملف التكوين. يمكنك استخدام تجمع الكائنات في الربيع. عندما تريد الحصول على تجمع الكائنات في فصل الربيع ، أعلن أن struts.objectFactory هو تجمع الكائنات في الربيع.
Struts.serve.static.browsercache هذه الخاصية تحدد ما إذا كان المتصفح يخبئ المحتوى الثابت. عندما يكون التطبيق في مرحلة التطوير ، نريد كل طلب الحصول على أحدث استجابة من الخادم ، حتى نتمكن من تعيين هذه الخاصية على False.
struts.enable.dynamicmethodinvocation هذه الخاصية تحدد ما إذا كانت Struts 2 تدعم مكالمات الطريقة الديناميكية ، والقيمة الافتراضية لهذه الخاصية صحيحة. إذا كنت بحاجة إلى إيقاف تشغيل مكالمات الطريقة الديناميكية ، فيمكنك تعيين هذه الخاصية على FALSE.
struts.enable.slashesinActionNames هذه الخاصية تحدد ما إذا كانت Struts 2 تسمح لاستخدامها في أسماء الإجراءات. القيمة الافتراضية لهذه الخاصية خاطئة. إذا أراد المطور السماح المائل في اسم الإجراء ، فيمكن تعيين الخاصية على True.
struts.tag.altsyntax تحدد هذه الخاصية ما إذا كانت ستسمح ببناء بناء جملة التعبير في علامات الدعامات 2. نظرًا لأن بناء جملة التعبير عادة ما يكون مطلوبًا في العلامات ، يجب ضبط هذه الخاصية على True ، والقيمة الافتراضية لهذه الخاصية صحيحة.
Struts.DevMode هذه الخاصية تحدد ما إذا كان تطبيق STRUTS 2 يستخدم وضع التطوير. إذا تم تعيين هذه الخاصية على True ، فيمكن عرض مطالبات خطأ أكثر وأكثر ودية عند حدوث خطأ في التطبيق. تقبل هذه الخاصية قيمتين فقط: True و Flase ، والقيمة الافتراضية لهذه الخاصية خاطئة. عادة ، عندما يكون التطبيق في مرحلة التطوير ، يتم ضبط العقار على صحيح ، وعندما يدخل مرحلة إصدار المنتج ، يتم تعيين الخاصية على خطأ.
Struts.i18n.Reload تحدد هذه الخاصية ما إذا كان النظام يعيد إعادة تحميل ملف المورد في كل مرة يصل فيها طلب HTTP. القيمة الافتراضية لهذه الخاصية خاطئة. سيكون وضع هذه الخاصية على True خلال مرحلة التطوير أكثر تفضيلاً للتطوير ، ولكن يجب ضبطها على خطأ أثناء مرحلة إطلاق المنتج.
والمطالبة هي تعيين صواب في مرحلة التطوير ، والتي ستعمل على إعادة تحميل ملف الموارد الدولي في كل مرة تطلبه ، حتى يتمكن المطورون من رؤية آثار التطوير في الوقت الفعلي ؛ يجب أن تقوم مرحلة إصدار المنتج بتعيين هذه الخاصية على خطأ لتوفير أداء متجاوب. إعادة تحميل ملف المورد لكل طلب سيقلل بشكل كبير من أداء التطبيق.
Struts.ui.theme تحدد هذه الخاصية موضوع العرض الافتراضي لعلامة العرض ، والقيمة الافتراضية لهذه الخاصية هي XHTML.
Struts.ui.templatedir تحدد هذه الخاصية موقع ملف القالب المطلوب لموضوع العرض. القيمة الافتراضية لهذه الخاصية هي قالب ، أي ملف القالب تحت مسار القالب يتم تحميله افتراضيًا.
Struts.ui.templatesuffix تحدد هذه الخاصية لاحقة ملف القالب ، وقيمة الخاصية الافتراضية لهذه الخاصية هي FTL. تتيح هذه الخاصية أيضًا استخدام قوالب FTL أو VM أو JSP ، المقابلة لقوالب FreeMarker و Velocity و JSP ، على التوالي.
struts.configuration.xml.reload تحدد هذه الخاصية ما إذا كان النظام سيقوم تلقائيًا بإعادة تحميل الملف بعد تغيير ملف struts.xml. القيمة الافتراضية لهذه الخاصية خاطئة.
struts.velocity.configfile تحدد هذه الخاصية موقع ملف السرعة. القيمة الافتراضية لهذه الخاصية هي السرعة.
Struts.Velocity.Contexts تحدد هذه الخاصية موضع سياق إطار السرعة. إذا كان الإطار يحتوي على سياقات متعددة ، يتم فصل السياقات المتعددة عن طريق الفواصل الإنجليزية (،).
Struts.Velocity.ToolBoxLocation تحدد هذه الخاصية موقع صندوق الأدوات الخاص بإطار السرعة.
struts.url.http.port تحدد هذه الخاصية منفذ الاستماع الذي يوجد عليه تطبيق الويب. عادة لا تحتوي هذه الخاصية على الكثير من المستخدمين ، ولكن فقط عندما تحتاج الدعامات 2 إلى إنشاء عنوان URL (مثل علامة URL) ، توفر هذه الخاصية المنفذ الافتراضي لتطبيق الويب.
Struts.url.https.port تشبه هذه الخاصية دور Struts.Url.http.port الخاصية ، والفرق هو أن هذه الخاصية تحدد منفذ خدمة التشفير في تطبيق الويب.
Struts.url.includeparams تحدد هذه الخاصية ما إذا كانت الدعامات 2 تحتوي على معلمات طلب عند إنشاء عنوان URL. تقبل هذه الخاصية ثلاث قيم سمات: لا شيء ، Get and All ، والتي لا تتوافق مع ، بما في ذلك ، بما في ذلك الحصول على معلمات طلب النوع وتشمل جميع معلمات الطلب.
Struts.custom.i18n.Resources تحدد هذه الخاصية ملف المورد الدولي المطلوب من قبل تطبيقات Struts 2. إذا كان هناك العديد من ملفات الموارد الدولية ، فسيتم فصل أسماء الملفات لملفات الموارد المتعددة عن طريق الفواصل الإنجليزية (،).
Struts.dispatcher.ParametersworkoRound لبعض خوادم Java EE ، لا يتم دعم طريقة طلب httpservlet getParameterMap (). في هذا الوقت ، يمكنك تعيين قيمة الخاصية على True لحل المشكلة. القيمة الافتراضية لهذه الخاصية خاطئة. بالنسبة لخوادم WebLogic و Orion و OC4J ، يجب عادةً ضبط هذه الخاصية على صحيح.
struts.freemarker.manager.classname تحدد هذه الخاصية مدير المؤشر المستخدم من قبل Struts 2. القيمة الافتراضية لهذه الخاصية هي org.apache.struts2
struts.freemarker.wrapper.altmap تدعم هذه الخاصية فقط قيمتين للسمات: صواب وكاذب ، والقيمة الافتراضية صحيحة. عادة لا توجد حاجة لتعديل قيمة الخاصية.
Struts.xslt.nocache تحدد هذه الخاصية ما إذا كانت نتيجة XSLT تستخدم ذاكرة التخزين المؤقت لخطاب الأنماط. عادة ما يتم ضبط هذه الخاصية على صحيح عندما يكون التطبيق في مرحلة التطوير ؛ عادة ما يتم ضبط هذه الخاصية على خطأ عندما يكون التطبيق في مرحلة استخدام المنتج.
Struts.Configuration.files تحدد هذه الخاصية ملف التكوين الذي تم تحميله بواسطة إطار STRUTS 2 افتراضيًا. إذا كنت بحاجة إلى تحديد ملفات التكوين المتعددة بشكل افتراضي ، فسيتم فصل أسماء الملفات لملفات التكوين المتعددة بواسطة الفواصل الإنجليزية (،). القيمة الافتراضية لهذه الخاصية هي struts- default.xml ، struts-lugin.xml ، struts.xml. عندما ترى قيمة هذه الخاصية ، يجب أن يفهم القراء سبب قيام إطار STRUTS 2 بتحميل ملف Struts.xml افتراضيًا.
شرح مفصل للسبع في struts2-plugin.xml
<struts> <bean type = "com.opensymphony.xwork2.ObjectFactory" name = "spring"/> <!-اجعل مصنع كائن الربيع الافتراضي التلقائي-> <name struts.ObjectOry </package> </struts
ملاحظة <name constant = "structs.objectfactory" value = "Spring"/>
هنا يكتب الإطار المستمر Struts.ObjectFactory ويضعه على "الربيع". في الواقع ، يتم استخدام الاختصار هنا. يمكننا كتابة الاسم الكامل: org.apache.struts2.spring.strutsSpringObjectFactory. يتوافق اختصار "الربيع" مع سمة الاسم في تكوين الفول. بشكل افتراضي ، يتم إنشاء إنشاء جميع الكائنات التي تم إنشاؤها بواسطة الإطار بواسطة ObjectFactory ، والتي توفر طرقًا للتكامل مع حاويات IOC الأخرى مثل Spring و Pico ، إلخ. هنا نستخدم org.apache.struts2.spring.strutsSpringObjectFactory بدلاً من الكائن الافتراضي.
بالإضافة إلى ذلك ، قلنا أعلاه أنه إذا لم يتم إنشاء الإجراء باستخدام Spring ObjectFactory ، فإن المكون الإضافي يوفر اعتراضين لتجميع الإجراء تلقائيًا. بشكل افتراضي ، فإن استراتيجية التجميع التلقائية المستخدمة من قبل الإطار هي الاسم ، مما يعني أن الإطار سوف يبحث عن الفاصوليا بنفس اسم سمة الإجراء في الربيع. تشمل استراتيجيات التجميع الاختيارية: النوع والسيارات والمُنشئ. يمكننا ضبطه من خلال الهياكل المستمرة.
وبهذه الطريقة ، يمكننا استخدام الفاصوليا التي تم حقنها في الربيع IOC في العمل. في الواقع ، هذه ميزة في حزمة التوسع التي كانت أعمال الويب متاحة منذ فترة طويلة. هيه. إذا قمت بتغيير إلى Strut2.0 ، فلا يزال يتعين عليك قول ذلك.
مع ملف التكوين أعلاه ، يمكننا الجمع بين SPRING 2.0 و STRUTS 2.0.