logo

التعليقات التوضيحية لتمهيد الربيع

تعد تعليقات Spring Boot أحد أشكال البيانات الوصفية التي توفر بيانات حول البرنامج. وبعبارة أخرى، يتم استخدام التعليقات التوضيحية لتقديم تكميلية معلومات حول البرنامج. إنه ليس جزءًا من التطبيق الذي نقوم بتطويره. ليس له تأثير مباشر على تشغيل الكود الذي يقومون بالتعليق عليه. لا يغير عمل البرنامج المترجم.

في هذا القسم سنناقش بعض الأمور المهمة شرح تمهيد الربيع التي سوف نستخدمها لاحقا في هذا البرنامج التعليمي.

التعليقات التوضيحية لإطار الربيع الأساسي

@مطلوب: ينطبق على فاصوليا طريقة واضعة. يشير إلى أنه يجب ملء الحبة المشروحة في وقت التكوين بالخاصية المطلوبة، وإلا فإنها ستطرح استثناءً BeanInitilizationException .

افعل أثناء الحلقة في Java

مثال

 public class Machine { private Integer cost; @Required public void setCost(Integer cost) { this.cost = cost; } public Integer getCost() { return cost; } } 

@Autowired: يوفر Spring التوصيل التلقائي القائم على التعليقات التوضيحية من خلال توفير تعليق توضيحي @Autowired. يتم استخدامه لربط الفاصوليا الربيعية تلقائيًا على طرق الضبط ومتغير المثيل والمنشئ. عندما نستخدم التعليق التوضيحي @Autowired، تقوم الحاوية الزنبركية بتوصيل الحبة تلقائيًا عن طريق مطابقة نوع البيانات.

مثال

 @Component public class Customer { private Person person; @Autowired public Customer(Person person) { this.person=person; } } 

@إعدادات: إنه تعليق توضيحي على مستوى الفصل. تم توضيح الفصل باستخدام @Configuration الذي تستخدمه Spring Containers كمصدر لتعريفات الفول.

مثال

 @Configuration public class Vehicle { @BeanVehicle engine() { return new Vehicle(); } } 

@ComponentScan: يتم استخدامه عندما نريد فحص الحزمة بحثًا عن الحبوب. يتم استخدامه مع التعليق التوضيحيConfiguration. يمكننا أيضًا تحديد الحزم الأساسية للبحث عن مكونات الربيع.

لينكس $المنزل

مثال

 @ComponentScan(basePackages = 'com.javatpoint') @Configuration public class ScanComponent { // ... } 

@فاصوليا: إنه تعليق توضيحي على مستوى الطريقة. إنه بديل لعلامة XML. إنه يوضح طريقة إنتاج الحبة التي ستتم إدارتها بواسطة Spring Container.

مثال

 @Bean public BeanExample beanExample() { return new BeanExample (); } 

الشروح النمطية لإطار الربيع

@عنصر: إنه تعليق توضيحي على مستوى الفصل. يتم استخدامه لتمييز فئة Java على أنها حبة. فئة Java مشروحة بـ @عنصر تم العثور عليه أثناء مسار الفصل. يقوم Spring Framework باستلامه وتكوينه في سياق التطبيق كملف فول الربيع .

خريطة مكرر جافا

مثال

 @Component public class Student { ....... } 

@مراقب: @Controller عبارة عن تعليق توضيحي على مستوى الفصل الدراسي. وهو التخصص @عنصر . إنه يمثل فئة كمعالج طلب ويب. وغالبا ما يستخدم لخدمة صفحات الويب. بشكل افتراضي، تقوم بإرجاع سلسلة تشير إلى المسار الذي سيتم إعادة توجيهه. يتم استخدامه في الغالب مع @RequestMapping حاشية. ملاحظة.

مثال

 @Controller @RequestMapping('books') public class BooksController { @RequestMapping(value = '/{name}', method = RequestMethod.GET) public Employee getBooksByName() { return booksTemplate; } } 

@خدمة: كما أنها تستخدم على مستوى الفصل. يخبر الربيع أن الفصل يحتوي على منطق الأعمال .

مثال

 package com.javatpoint; @Service public class TestService { public void service1() { //business code } } 

@مخزن: إنه تعليق توضيحي على مستوى الفصل. المستودع هو أ المنظمات اللامركزية المستقلة (كائن الوصول إلى البيانات) الذي يصل إلى قاعدة البيانات مباشرة. يقوم المستودع بجميع العمليات المتعلقة بقاعدة البيانات.

 package com.javatpoint; @Repository public class TestRepository { public void delete() { //persistence code } } 

التعليقات التوضيحية لتمهيد الربيع

    @EnableAutoConfiguration:يقوم تلقائيًا بتكوين الحبة الموجودة في مسار الفصل وتكوينها لتشغيل الأساليب. تم تقليل استخدام هذا التعليق التوضيحي في إصدار Spring Boot 1.2.0 لأن المطورين قدموا بديلاً للتعليق التوضيحي، أي. @SpringBootApplication .@SpringBootApplication:وهو عبارة عن مزيج من ثلاثة شروح @EnableAutoConfiguration، @ComponentScan، و @إعدادات .

التعليقات التوضيحية لـ Spring MVC وREST

    @RequestMapping:يتم استخدامه لرسم خريطة طلبات الويب . لديها العديد من العناصر الاختيارية مثل يستهلك، رأس، طريقة، اسم، معلمات، مسار، ينتج ، و قيمة . نستخدمها مع الفصل وكذلك الطريقة.

مثال

 @Controller public class BooksController { @RequestMapping('/computer-science/books') public String getAllBooks(Model model) { //application code return 'bookList'; } 
    @جيتمابينج:إنه يرسم خريطة الحصول على HTTP طلبات على طريقة معالج محددة. يتم استخدامه لإنشاء نقطة نهاية خدمة ويب جلب يتم استخدامه بدلاً من استخدام: @RequestMapping(الطريقة = RequestMethod.GET) @بوستمابينج:إنه يرسم خريطة بوست HTTP طلبات على طريقة معالج محددة. يتم استخدامه لإنشاء نقطة نهاية خدمة ويب يخلق يتم استخدامه بدلاً من استخدام: @RequestMapping(الطريقة = RequestMethod.POST) @PutMapping:إنه يرسم خريطة وضع HTTP طلبات على طريقة معالج محددة. يتم استخدامه لإنشاء نقطة نهاية خدمة ويب يخلق أو التحديثات يتم استخدامه بدلاً من استخدام: @RequestMapping(الطريقة = RequestMethod.PUT) @حذف الخريطة:إنه يرسم خريطة حذف HTTP طلبات على طريقة معالج محددة. يتم استخدامه لإنشاء نقطة نهاية خدمة ويب يحذف مورد. يتم استخدامه بدلاً من استخدام: @RequestMapping(الطريقة = RequestMethod.DELETE) @باتشمابينج:إنه يرسم خريطة تصحيح HTTP طلبات على طريقة معالج محددة. يتم استخدامه بدلاً من استخدام: @RequestMapping(الطريقة = RequestMethod.PATCH) @RequestBody:يتم استخدامه ل ربط طلب HTTP مع كائن في معلمة الأسلوب. داخليا يستخدم محولات رسائل HTTP لتحويل نص الطلب. عندما نقوم بتعليق معلمة الطريقة باستخدام @RequestBody، يقوم إطار عمل Spring بربط نص طلب HTTP الوارد بتلك المعلمة.@ResponseBody:فهو يربط قيمة إرجاع الطريقة بنص الاستجابة. يخبر Spring Boot Framework بإجراء تسلسل لكائن إرجاع إلى تنسيق JSON وXML.@متغير المسار:يتم استخدامه لاستخراج القيم من URI. وهو مناسب أكثر لخدمة الويب RESTful، حيث يحتوي عنوان URL على متغير مسار. يمكننا تحديد @PathVariable متعددة في إحدى الطرق.@RequestParam:يتم استخدامه لاستخراج معلمات الاستعلام من عنوان URL. ومن المعروف أيضا باسم أ معلمة الاستعلام . هو الأكثر ملاءمة لتطبيقات الويب. يمكنه تحديد القيم الافتراضية في حالة عدم وجود معلمة الاستعلام في عنوان URL.@RequestHeader:يتم استخدامه للحصول على تفاصيل حول رؤوس طلب HTTP. نستخدم هذا التعليق التوضيحي كـ معلمة الطريقة . العناصر الاختيارية للتعليق التوضيحي هي الاسم، المطلوب، القيمة، القيمة الافتراضية. لكل تفاصيل في الرأس، يجب أن نحدد تعليقات توضيحية منفصلة. يمكننا استخدامه عدة مرات بطريقة ما@ريستكونترولر:يمكن اعتباره مزيجًا من @مراقب و @ResponseBody التعليقات التوضيحية . يتم شرح التعليق التوضيحي @RestController نفسه باستخدام التعليق التوضيحي @ResponseBody. إنه يلغي الحاجة إلى التعليق التوضيحي لكل طريقة باستخدامResponseBody.@RequestAttribute:فهو يربط معلمة أسلوب لطلب السمة. يوفر وصولاً سهلاً إلى سمات الطلب من طريقة التحكم. بمساعدة التعليق التوضيحي @RequestAttribute، يمكننا الوصول إلى الكائنات التي يتم ملؤها على جانب الخادم.

ملاحظة: لقد استخدمنا جميع التعليقات التوضيحية المذكورة أعلاه في البرنامج التعليمي لخدمات الويب RESTful مع أمثلة من العالم الحقيقي.