مقدمة
تقدم هذه المقالة بشكل أساسي المحتوى ذي الصلة حول توجيه الربيع استنادًا إلى معلمات عنوان URL. يتم مشاركته للرجوع إليه وقيمة التعلم. دعنا نلقي نظرة على المقدمة التفصيلية أدناه.
اكتشف المشاكل
في الآونة الأخيرة ، وجدت مشكلة عند كتابة واجهات ، أي أن أجزاء المسار من عناوين URL في واجهات الراحة هي نفسها ، ويتم تمييزها وفقًا للاستعلام الذي يمر في معلمات مختلفة.
على سبيل المثال ، واجهة التحميل العادية لـ S3 هي:
PUT /{bucketName} /{ObjectName}واجهة التحميل في قطع هي:
put /{bucketName} /{objectName}؟ partnumber = {partnumber}يعد عدد الحمل والتحميل واجهة واحدة ، ولا يتم تمرير المعلمتين في واجهة أخرى. إذن كيف تضع الطريق في الربيع؟
بشكل عام ، قمنا بتعيين RoutesRequestMapping @RequestMapping(value = "/xx", method = RequestMethod.GET) . ثم في توقيع الطريقة ، يمكن حقن المعلمات من خلال requestparam.
ومع ذلك ، لا يمكن تنفيذ التمييز مباشرة عن طريق حقن معلمات مختلفة ، مثل:
@desponseBody@requestMapping (value = "/xx" ، method = requestMethod.get) السلسلة العامة get1 () {return "get1" ؛}@repositbody@requestMapping (value = "/xx" ، method = requestMethod.get) السلسلة العامة get2 (اسم requestparam) {return "get2" + name ؛}هذا سيبلغ عن خطأ:
Java.Lang.IlegalStateException: رسم الخرائط الغامضة. لا يمكن رسم خريطة "democontroller_v01" public.
حل
هذا يعني أنك قمت بالتسجيل مرارًا وتكرارًا ، لذلك لا يمكن استخدام requestparam كأساس توجيه.
requestparam
يستخدم لمعالجة نوع المحتوى: المحتوى المشفر للتطبيق/X-WWW-Form-urlencoded. (في بروتوكول HTTP ، إذا لم يتم تحديد نوع المحتوى ، فإن المعلمة التي تم تمريرها الافتراضي هي نوع التطبيق/X-WWW-Form-urlencoded)
يمكن لـ requestParam قبول خصائص الأنواع البسيطة أو أنواع الكائنات.
يتمثل الجوهر في استخدام Accondisish Mechanism Conversionservice لتكوين خريطة المعلمة ذات القيمة الرئيسية في request.getParameter () لتحويلها إلى كائن أو حقل تلقي معلمة.
REQUESTMAPPE هو شرح التوجيه. بالإضافة إلى حقل القيمة شائع الاستخدام لتحديد عنوان URL ، فإنه يوفر أيضًا معلمة Params ، والتي يمكن أن تحدد كيفية مطابقة معلمات الاستعلام في عنوان URL. عدة طرق للتكوين:
هذا يتيح لك تحديد الطرق بمرونة للغاية.
علاوة على ذلك ، يوفر requestmapping أيضًا معلمة Headers ، والتي تتيح لنا التوجيه وفقًا لموقف الرأس!
لخص
ما سبق هو المحتوى الكامل لهذه المقالة. آمل أن يكون لمحتوى هذه المقالة قيمة مرجعية معينة لدراسة أو عمل الجميع. إذا كان لديك أي أسئلة ، فيمكنك ترك رسالة للتواصل. شكرا لك على دعمك إلى wulin.com.