المكونات الأساسية لـ SpringMVC
Dispatcherservlet―> وحدة التحكم ، إدخال طلب
Handermapping-> وحدة التحكم ، وطلب التوزيع
وحدة تحكم - وحدة تحكم ، عملية معالجة الطلب
ModelandView ---> النموذج ، وتغليف نتائج معالجة الأعمال ووجهات النظر
ViewResolver ---> عرض ، عرض معالج العرض
عملية المعالجة
يصدر المتصفح طلبًا إلى سعة وتسليم الطلب إلى مرسل وحدة التحكم في الواجهة الأمامية للمعالجة.
يجد وحدة التحكم مكون وحدة التحكم المقابل للتعامل مع الطلب من خلال التداول.
قم بتنفيذ الطريقة التي يتفق عليها مكون وحدة التحكم لمعالجة الطلب ، واستدعاء مكون النموذج لإكمال معالجة الأعمال في طريقة المؤتمر. يمكن أن تُرجع طريقة الاتفاقية كائن ModelAndView ، الذي يلف بيانات نتائج معالجة الأعمال وعرض معلومات الاسم.
بعد استلام وحدة التحكم في ModelandView ، يقوم باستدعاء مكون ViewResolver ، ويحدد موقع العرض (JSP) ويمرر المعلومات لإنشاء نتيجة واجهة الاستجابة.
يحتوي تكوين التعليق على العديد من المزايا على تكوين XML:
يمكن أن يستفيد بالكامل من آلية انعكاس Java للحصول على معلومات بنية الفصل ، والتي يمكن أن تقلل بشكل فعال من عمل التكوين. إذا كنت تستخدم تعليق توضيحي JPA لتكوين رسم خرائط ORM ، فلن نحتاج إلى تحديد اسم السمة ونوعها ومعلومات أخرى عن PO. إذا كان حقل جدول العلاقة واسم سمة PO ونوعه متماثلين ، فأنت لا تحتاج حتى إلى كتابة معلومات تعيين سمات المهمة - لأنه يمكن الحصول على هذه المعلومات من خلال آلية انعكاس Java.
توجد التعليقات ورمز Java في نفس الملف ، بينما تستخدم تكوينات XML ملفات التكوين المستقلة. لن يتم تعديل معظم معلومات التكوين بعد تطوير البرنامج. إذا تم وضع معلومات التكوين ورمز Java معًا ، فسيساعد ذلك على تعزيز تماسك البرنامج. باستخدام ملفات تكوين XML المستقلة ، غالبًا ما يحتاج المبرمجون إلى التبديل بين ملفات البرنامج وملفات التكوين عند كتابة وظيفة. هذا التناقض في التفكير سيقلل من كفاءة التنمية.
مكون وحدة التحكم
مكون وحدة التحكم مسؤول عن إجراء معالجة تجارية محددة ، ومن الضروري تنفيذ واجهة وحدة التحكم والأساليب المتفق عليها أثناء الكتابة.
مكون ModelandView
سيقوم مكون مؤتمر وحدة التحكم بإرجاع كائن ModelandView ، الذي يلف بيانات نموذج نتائج معالجة الأعمال وعرض المعلومات.
منشئ ModelandView كما يلي:
-أوودلاندفيو (StringViewName)
-modelandview (StringViewName ، MapModel)
عندما يكون ViewName هو اسم صفحة JSP ، ويتم تخزين بيانات النموذج في سمة الطلب
مكون مركب
من خلال المكون المتداول ، يمكن لجهاز التحكم في Dispatcherservlet تعيين طلبات HTTP إلى مكون وحدة التحكم.
-simpleuserHandLermapping يحتفظ بطلب HTTP وعلاقة تعيين وحدة التحكم (MAP) لاتصال وحدة التحكم وفقًا لعلاقة مراسلات القائمة.
SimpleuserHandlerMapping
<Bean> <property name = "mappings"> <bors> <prop key = "/login.form"> logincontroller </props> </props key = "/hello.form"> hellocontroller </prop> </propert
يتوافق The Hellocontroller في علامة SimpleUserHandLermapping أعلاه مع المكون الذي يكون معرفه HelloconTroller في علامة الفول أدناه.
requestMappingHandLermapping
ResquestMappingHandlerAdapter
استخدم شرح RespeSmappapping على فئة وحدة التحكم وطرق تحديد طلب HTTP العميل المقابل.
مكون ViewResolver
تقوم جميع مكونات وحدة التحكم بإرجاع مثيل ModelandView ، وتغلف اسم العرض ، ويتم تحديد العرض في الربيع بالاسم ، ويحل View ViewResolver العرض من خلال الاسم.
InternalResourceViewResolver يلف servlets و JSPs ، باستخدام أمثلة:
<bean id = "jspviewResolver"> <property name = "prefix" value = "/web-inf/jsp/"/> <property name = "falue".
على سبيل المثال: يمكن تعيين اسم العرض Hello إلى /web-inf/hello.jsp من خلال التكوين أعلاه
مراقبة مراقبة
نستخدم عمومًا شرح Controller لإعلان مكون وحدة التحكم ، مما يجعله أكثر مرونة ولا تحتاج إلى تنفيذ واجهة وحدة التحكم كما كان من قبل.
controllerpublic class hellocontroller {public string execute () {return "hello" ؛ }}هناك شرط أساسي لاستخدام التعليق التوضيحي أعلاه ، وهو تمكين مسح التعليق التوضيحي:
<السياق: مكون المسح الضوئي package = "org.test.controller">
تكتب الحزمة الأساسية الحزمة حيث يوجد مكون وحدة التحكم.
توسيع نطاق التوضيح
يشير Resiredsmapping إلى طلب هذه الفئة أو الطريقة التي تتوافق معها.
@controller @resquestmapping ("/test1") class public hellocontroller {reResfeSferMapping ("/hello.form") public helloexecute () {return "hello" ؛ }}إذا كنت بحاجة إلى استخدام requestmapping ، فأنت بحاجة إلى تحديد مكونين بين الفول في فصل الربيع XML لتكوين ملفات ملفات MappingHandLerMapping (قبل تعريف الفئة) و requestMappingAdapter (قبل تعريف الطريقة) ، على سبيل المثال (مطلوب أن يتم تحديده في إصدار الربيع 3.1):
<bean/> <bean/>
لا يلزم تحديد إصدار الربيع 3.2
<MVC: تعليقات التعليقات التوضيحية/>
لخص
ما سبق هو مقدمة موجزة للملاحظات في الربيع في هذه المقالة ، وآمل أن تكون مفيدة للجميع. يمكن للأصدقاء المهتمين الاستمرار في الرجوع إلى الموضوعات الأخرى ذات الصلة على هذا الموقع. إذا كانت هناك أي أوجه قصور ، فيرجى ترك رسالة لإشارةها. شكرا لك يا أصدقائك لدعمكم لهذا الموقع!