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

نشرت: 2021-12-13

يعد Java Spring Framework إطارًا مفتوح المصدر وعلى مستوى المؤسسة يُستخدم لإنشاء تطبيقات مستقلة على مستوى الإنتاج تعمل على Java Virtual Machine (JVM). تحقيقًا لهذه الغاية ، تعد Java Spring Boot أداة تبسط وتسريع عملية تطوير تطبيقات الويب والخدمات المصغرة باستخدام Spring Framework. لهذا الغرض ، يستفيد Java Spring Boot من ثلاث إمكانيات أساسية - التكوين التلقائي ، ونهج عنيد للتكوين ، وإمكانية إنشاء تطبيقات قائمة بذاتها. يوفر دمج هذه الميزات الأساسية أداة تسمح للمطورين بإعداد التطبيقات المستندة إلى Spring مع الحد الأدنى من التكوينات.

قبل التعليقات التوضيحية ، كان سلوك Spring Framework يتحكم في تكوين XML في الغالب. ومع ذلك ، فقد غيرت التعليقات التوضيحية لـ Spring Boot بشكل كبير كيف يمكنك تكوين سلوكيات Spring Framework.

في هذه المقالة ، سنتناول بعض التعليقات التوضيحية الأساسية في Spring Framework.

جدول المحتويات

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

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

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

التعليقات التوضيحية لـ Spring Boot يجب أن يعرفها الجميع

على الرغم من أن Spring Boot يعمل بلغة Java و Groovy و Kotlin ، فإننا سنركز على Java أثناء مناقشة التعليقات التوضيحية الهامة لـ Spring Boot.

1. @ التكوين

يتم استخدامConfiguration في الفئات التي تحدد الفول. التناظرية لملف تكوين XML هو تعليق توضيحي على مستوى الفئة يستخدم كمصدر لتعريفات الفول. فئة JavaConfiguration التي تم التعليق عليها توضيحيًا هي تكوين في حد ذاته ولها طرق لتكوين وإنشاء تبعيات.

مثال:

@إعدادات

حافلة عامة

{

BeanBus المحرك ()

{

عودة الحافلة الجديدة () ؛

}

}

2. @ فول

كبديل لعلامة XML <bean> ، يتم استخدام التعليق التوضيحيBean على مستوى الطريقة للإشارة إلى أن إحدى الطرق تنتج فولًا تتم إدارته بواسطة حاوية Spring. يعمل هذا التعليق التوضيحي جنبًا إلى جنب معConfiguration لإنشاء حبوب الربيع. يحتويConfiguration على طرق لتكوين وإنشاء مثيل للتبعيات ، ويتم التعليق على هذه الأساليب بواسطةBean.

مثال:

@فاصوليا

نموذج الفول العام مثال ()

{

إرجاع BeanExample () الجديد ،

}

3. ComponentScan

يستخدم التعليق التوضيحيComponentScan لفحص حزمة من الفول. يتم استخدامه مع التعليق التوضيحيConfiguration لإعلام Spring بالحزم التي يجب مسحها ضوئيًا للمكونات المشروحة.

مثال:

ComponentScan (basePackages = "com.xyz")

@إعدادات

ScanComponent للفئة العامة

{

//…

}

4. @ المكون

يستخدم التعليق التوضيحيComponent على الفئات للإشارة إلى مكون Spring. إنه تعليق توضيحي على مستوى الفصل يحول الفصل إلى Spring bean أثناء المسح التلقائي.

مثال:

@عنصر

معلمو الفصل العام

{

……

}

5. EnableAutoConfiguration @

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

6.SpringBootApplication

يضيف التعليق التوضيحيSpringBootApplication ثلاثة تعليقات توضيحية -Configuration وEnableAutoConfiguration وComponentScan. يتم استخدامه في فئة التطبيق أثناء إعداد مشروع Spring Boot ، ويتم وضع الفئة المشروحة بـSpringBootApplication في الحزمة الأساسية. يقومSpringBootApplication بفحص المكونات ، ولكن فقط من الحزم الفرعية.

7.Repository

يتم استخدام التعليق التوضيحي لـRepository في فئات Java التي تصل إلى قاعدة البيانات مباشرةً. إنه يعمل كعلامة للفئات التي تفي بدور كائن الوصول إلى البيانات أو المستودع.

مثال:

@مخزن

اختبار الطبقة العامة

{

حذف عام باطل ()

{

// رمز استمرار

}

}

8. @ الخدمة

إنه تعليق توضيحي على مستوى الفصل يشير إلى فئة Java تؤدي خدمة مثل تنفيذ منطق الأعمال أو إجراء العمليات الحسابية أو استدعاء واجهات برمجة التطبيقات الخارجية. التعليق التوضيحي لـService هو شكل خاص من التعليق التوضيحيComponent للاستخدام في طبقة الخدمة.

مثال:

@خدمة

TestService للفئة العامة

{

خدمة الفراغ العام 1 ()

{

// كود العمل

}

}

9.Autowired

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

10. @ المتحكم

يتم استخدام التعليق التوضيحي لـController في فئات Java التي تعمل كوحدة تحكم في أحد التطبيقات. يسمح بالاكتشاف التلقائي لفئات المكونات في مسار الفصل وأيضًا التسجيلات التلقائية لتعريفات الفول بالنسبة لهم. عادةً ما يتم استخدام التعليق التوضيحي لـController معRequestMapping ، ويمكن لفئات Java التي تم التعليق عليها باستخدامController معالجة تعيينات الطلبات المتعددة.

مثال:

@مراقب

RequestMapping ("سيارات")

فئة عامة CarsController

{

RequestMapping (القيمة = “/ {name}” ، الطريقة = RequestMethod.GET)

الموظف العام getCarsByName ()

{

عودة السيارات

}

}

11.RequestMapping

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

مثال:

@مراقب

متحكم الزهور من الدرجة العامة

{

RequestMapping (“/ red-color / flowers”)

العامة سلسلة getAllFlowers (نموذج نموذج)

{

// كود التطبيق

عودة "قائمة الزهور" ؛

}

12. @ مؤهل

يتم استخدامQualifier جنبًا إلى جنب معAutowired عند الحاجة إلى مزيد من التحكم في عملية حقن التبعية. يمكن تحديد التعليق التوضيحي لـQualifier إما على معلمات الأسلوب أو وسيطات المُنشئ الفردية. تنشأ الارتباكات عادة عندما ينشئ المطور أكثر من حبة واحدة من نفس النوع ، ولكن يجب ربط واحدة منها فقط بممتلكات. يعد التعليق التوضيحي لـQualifier مفيدًا لإزالة هذه الالتباسات.

مثال:

@عنصر

فئة عامة BeanB1 تنفذ BeanInterface {

//

}

@عنصر

فئة عامة BeanB2 تنفذ BeanInterface {

//

}

في المثال أعلاه ، يتم تنفيذ BeanInterface بواسطة الفاصولياء BeanB1 و BeanB2. الآن ، إذا قامت BeanA بتشغيل هذه الواجهة تلقائيًا ، فلن يعرف Spring أي من التطبيقين يجب أن يضخ. يمكنك حل هذه المشكلة باستخدام التعليق التوضيحيQualifier. مع وضع هذا التعليق التوضيحي ، سيعرف Spring أي من الحبوب المراد توصيلها تلقائيًا.

@عنصر

فئة عامة BeanA {

تضمين التغريدة

Qualifier (“beanB2”)

تبعية BeanInterface الخاصة ؛

...

}

13.Value

يتم استخدام التعليق التوضيحيValue في الحقل ومعلمة الأسلوب ومستويات معلمة المُنشئ. يشير إلى تعبير القيمة الافتراضية للمعامل أو الحقل لتهيئة الخاصية به.

14. @ كسول

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

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

ماجستير العلوم في علوم البيانات من جامعة ليفربول جون مورس

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

فيما يلي بعض النقاط البارزة في البرنامج في لمحة:

  • درجة الماجستير من LJMU و PGP التنفيذي من IIT بنغالور
  • أكثر من 500 ساعة من التعلم مليء بالجلسات الحية ودراسات الحالة والمشاريع
  • تغطية شاملة لأكثر من 14 أداة وبرنامج
  • ثلاثة تخصصات فريدة
  • 360 درجة مخصصة للمساعدة المهنية
  • التعلم من الأقران والشبكات الصناعية

لقد أثرت برامج التعلم الغامرة والمتصلة بالصناعة من upGrad على أكثر من 500000 من المتخصصين العاملين على مستوى العالم وتستمر في وضع معايير عالية في صناعة تكنولوجيا التعليم العالي. لذا ، تقدم بطلبك اليوم وانضم إلى 40.000+ قاعدة المتعلمين العالمية المنتشرة في 85 دولة!

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

ما هو الغرض من مشغل Spring Boot؟

مبتدئين Spring Boot هي واصفات تبعية تسمح بإضافة برطمانات في مسار الفصل. يحتوي كل كاتب على نمط التسمية التالي في إطار Spring Boot: spring-boot-starter- * ، حيث يمثل * نوعًا معينًا من التطبيقات.

ما هو الفرق بينSpringBootApplication و @ EnableAutoConfiguration؟

تتمثل المهمة الأساسية لبرنامجEnableAutoConfiguration في تمكين ميزات التكوين التلقائي لتطبيق Spring Boot. على العكس من ذلك ، يجمعSpringBootApplication بين ثلاثة تعليقات توضيحية -ComponentScan لمسح المكونات وConfiguration للتكوين المستند إلى Java في إطار عمل Spring وEnableAutoConfiguration للسماح بالتكوين التلقائي في تطبيقات Spring Boot.

هل يمكن تشغيل Spring Boot بدون تطبيق SpringBoot؟

ليس إلزاميًا استخدامSpringBootApplication لإنشاء تطبيق Spring Boot. لا يزال بإمكانك استخدامEnableAutoConfiguration وConfiguration بشكل فردي.