1. مقدمة للعديد من التعليقات التوضيحية حول كيفية التعامل مع المعلمات في عنوان URL
pathvaribale احصل على بيانات في url
requestparam احصل على قيمة معلمة الطلب
التعليق التوضيحي لـ GetMapping هو اختصار @requestmapping (method = requestMethod.get)
(1) يحصل Pathvaribale على البيانات في عنوان URL
بالنظر إلى مثال ، إذا كنا بحاجة إلى الحصول على قيمة المعرف في url = localhost: 8080/hello/id ، فإن رمز التنفيذ هو كما يلي:
RestControllerPublic Class HelloconTroller {REquestMapping (value = "/hello/{id}/{name}" ، method = requestMethod.get) السلسلة العامة sealhello (@pathvariable ("id") integer id ،@pathvariable ("name") }}أدخل العنوان في المتصفح: LocalHost: 8080/Hello/100/HelloWorld ثم طباعته على صفحة HTML:
معرف: 81
وبالمثل ، إذا كنا بحاجة إلى الحصول على معلمات متعددة في عنوان URL للحصول عليها ، فيمكننا القيام بذلك كما هو موضح في الكود التالي.
RestControllerPublic Class HelloconTroller {REquestMapping (value = "/hello/{id}/{name}" ، method = requestMethod.get) السلسلة العامة sealhello (@pathvariable ("id") integer id ،@pathvariable ("name") }}أدخل العنوان في المتصفح: LocalHost: 8080/Hello/100/HelloWorld ثم طباعته على صفحة HTML:
المعرف: 100 الاسم: HelloWorld
المتطلب السابق للحصول على المعلمات في عنوان URL من خلال التعليق التوضيحي المتغير هو أننا نعرف تنسيق عنوان URL.
فقط من خلال معرفة تنسيق عنوان URL ، يمكننا الحصول على قيم المعلمة في الموضع المقابل من خلال نفس التنسيق على الطريقة المحددة.
بشكل عام ، تنسيق عنوان URL هو: LocalHost: 8080/Hello؟ id = 98. كيف تحصل على قيمة الهوية في هذه الحالة؟ هذا يتطلب مساعدة @requestparam.
2.@requestparam احصل على قيمة معلمة الطلب
على سبيل المثال:
RestControllerPublic Class HelloconTroller { @requestmapping (value = "/hello" ، method = requestMethod.get) SealherHello ( @requestparam ("id") integer id) {return "id:"+id ؛ }}أدخل العنوان في المتصفح: LocalHost: 8080/Hello؟ id = 1000 ، ويمكنك رؤية النتائج التالية:
معرف: 1000
عندما ندخل العنوان في المتصفح: LocalHost: 8080/Hello؟ ID ، أي أننا لا ندخل القيمة المحددة للمعرف ، فإن النتيجة التي تم إرجاعها هي NULL. نتائج الاختبار المحددة هي كما يلي:
معرف: فارغ
ومع ذلك ، عندما ندخل العنوان في المتصفح: LocalHost: 8080/Hello ، أي ، دون إدخال معلمة المعرف ، سيتم الإبلاغ عن الخطأ التالي:
خطأ في صفحة الخطأ القابلة للبيضاء
يوفر لنا شرح REQUESTPARAM هذا الحل ، أي عندما لا يقوم المستخدم بإدخال المعرف ، يتم استخدام القيمة الافتراضية. الرمز المحدد كما يلي:
RestControllerPublic Class HelloconTroller { @requestmapping (value = "/hello" ، method = requestMethod.get) // مطلوب = يعني يعني أنه يمكن إدخال معلمة المعرف في عنوان URL ، وسيتم استخدام المعلمة الافتراضية في هذا الوقت. السلسلة العامة sealhello (requestparam (value = "id" ، مطلوب = false ، defaultValue = "1") integer id) {return "id:"+id ؛ }}إذا كانت هناك معلمات متعددة في عنوان URL ، أي عنوان URL مشابه لـ LocalHost: 8080/Hello؟ id = 98 && name = HelloWorld ، يمكن أيضًا التعامل معه بهذه الطريقة. الرمز المحدد كما يلي:
RestControllerPublic Class HelloconTroller {@requestmapping (value = "/hello" ، method = requestMethod.get) السلسلة العامة sealhhello (@requestparam ("id") integer id ،@requestparam ("name") {return "id:"+id+"name:"+name ؛ }}نتائج الاختبار في المتصفح كما يلي: LocalHost: 8080/Hello؟ ID = 1000 & name = عنوان HelloWorld ، سيتم عرض المحتوى التالي:
المعرف: 1000 الاسم: Helloworld
3.@getMapping الجمع التعليق التوضيحي
GetMapping هو توضيح مزيج ، وهو اختصار لـ requestMapping (method = requestMethod.get). خرائط التعليقات التوضيحية هذه HTTP تصل إلى طريقة معالجة محددة.
أي أنه يمكنك استخدام GetMapping (value = "/hello") بدلاً من requestmapping (value = "/hello" ، method = requestMethod.get). وهذا هو ، دعنا نتبسي الرمز.
RestControllerPublic Class HelloconTroller {//@requestmapping (value = "/hello" ، method = requestMethod.get) getMapping (value = "/hello") // مطلوب = خطأ ، فهذا يعني أنه يمكن إدخال معلمة المعرف في عنوان URL ، وسيتم استخدام المعلمة الافتراضية في هذا الوقت. السلسلة العامة sealhello (requestparam (value = "id" ، مطلوب = false ، defaultValue = "1") integer id) {return "id:"+id ؛ }}4. التعليقات التوضيحية لتشجيع الجمع:
نفس طريقة GetMapping
التعليق التوضيحي أعلاه على المعلمات في معالجة SPRINGBOOT لعنوان URL هو كل المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.