مقدمة لإطار الربيع

مقدمة لإطار الربيع
القراء مثلك يساعدون في دعم MUO. عند إجراء عملية شراء باستخدام الروابط الموجودة على موقعنا ، فقد نربح عمولة تابعة. اقرأ أكثر.

Spring هو إطار عمل Java يستخدم حاوية لإنشاء المكونات المختلفة للتطبيق وإدارتها. الحاوية (تسمى غالبًا سياق تطبيق Spring) تربط المكونات المختلفة في تطبيق ما باستخدام نمط تصميم حقن التبعية (DI). يسمح لك DI باستخدام كائن في فئة تابعة ، دون إنشاء مثيل جديد منه داخل الفئة التابعة.





اجعل فيديو اليوم

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





استكشاف الميزات الأساسية لفصل الربيع

يحتوي إطار الربيع على حوالي 20 وحدة منظمة جيدًا تلعب دورًا أساسيًا في قدرتها على إنشاء التطبيقات وإدارتها. بناءً على الميزات الأساسية لهذه الوحدات ، يمكنك تجميعها في خمس فئات:





كيفية جعل جهاز الكمبيوتر الخاص بك أسرع windows 10
  • حاوية أساسية
  • الوصول إلى البيانات / تكاملها
  • الويب
  • البرمجة والأجهزة الموجهة نحو الجانب
  • اختبار

حاوية الربيع

يستخدم Spring حاوية لإنشاء وإدارة مكونات مختلفة (يطلق عليها اسم حبوب) للتطبيق. يمكن الوصول إلى الحاوية من خلال واجهة ApplicationContext في Spring ، والتي تتيح لك إنشاء الكائنات (أو الفاصوليا) وتكوينها وتجميعها. يمكن أن تؤدي حاوية Spring وظيفتها بسبب مساعدة البيانات الوصفية للتكوين.

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



الوصول إلى البيانات الربيعية / التكامل

يتكون جانب الوصول / التكامل إلى البيانات في إطار الربيع من عدة وحدات فرعية: JDBC و ORM و OXM و JMS والمعاملات. تعمل هذه الوحدات معًا لإدارة أي بيانات يستخدمها تطبيقك.

الربيع ويب

توفر ميزة الويب الخاصة بتطبيق Spring تكاملًا موجهًا نحو الويب لتطبيقك. بالإضافة إلى التكامل الموجه للويب ، يوفر Spring وحدة web servlet. وحدة الويب servlet مسؤولة عن Spring’s تنفيذ وحدة التحكم في عرض النموذج (MVC) .





البرمجة الموجهة نحو الجانب الربيعي (AOP)

يعتبر إطار عمل AOP في Spring أحد مكوناته الرئيسية. على الرغم من أن إطار عمل AOP ليس مهمًا لوظيفة حاوية Spring ، إلا أنه يكمل الحاوية من خلال كونه حلاً وسيطًا قادرًا. تتمثل إحدى الميزات الرئيسية لإطار عمل AOP في أنه يوفر خدمات مؤسسية تعريفية لتطبيقك ، أي إدارة معاملات الإعلان.

إدارة المعاملات التصريحية هي نهج مرغوب فيه لتطوير البرامج لأن لها تأثير ضئيل على كود التطبيق.





اختبار الربيع

يولي الربيع أهمية كبيرة لاختبار التطبيق. تدعم وحدة الاختبار الخاصة بها اختبار التكامل واختبار الوحدة باستخدام JUnit أو TestNG.

إنشاء تطبيق الربيع

هناك عدة طرق لإنشاء النموذج المعياري لتطبيق Spring الجديد. تشمل الأساليب المختلفة ما يلي:

  • من تطبيق الويب (أو Spring Initializr) على موقع Spring الرسمي.
  • إنشاء هيكل دليل المشروع يدويًا وبناء المواصفات.
  • مع مجموعة أدوات الربيع.
  • من سطر الأوامر مع واجهة سطر الأوامر Spring Boot.
  • مع Eclipse IDE.
  • مع IntelliJ IDEA IDE.

النهج الأكثر شيوعًا هو Spring Initializr:

  بداية الربيع

كما ترى من الصورة أعلاه ، سيكون لديك العديد من القرارات التي يتعين عليك اتخاذها. الأول هو نوع المشروع الذي تريد تهيئته. يوفر Spring ثلاثة خيارات: Gradle لـ Groovy أو Gradle لـ Kotlin أو Maven. سيستخدم هذا التطبيق النموذجي مشروع Maven.

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

  بيانات تعريف الربيع Initalizr

بعد ذلك ، ستحتاج إلى تحديد الحزمة التي تريد ملفاتك فيها (جرة أو حرب). ثم يمكنك تحديد إصدار Java الموجود على جهازك. القرار النهائي الذي يتعين عليك اتخاذه هو نوع التبعيات التي تريدها لتطبيقك.

يوفر Spring العديد من التبعيات التي يمكنك استخدامها لإضافة خصائص إلى تطبيقك. لإضافة تبعية جديدة إلى التطبيق الخاص بك ، ما عليك سوى النقر فوق زر إضافة التبعيات على يمين Spring Initializr. سيؤدي هذا الإجراء إلى إنشاء التراكب التالي على شاشتك:

فيركلوك رازبيري باي 3 ب +
  الربيع تراكب Initializr

بالنسبة لهذا التطبيق النموذجي ، فإن التبعية الوحيدة التي ستحتاج إليها هي Spring Web. تتيح لك هذه التبعية إنشاء تطبيقات ويب باستخدام بنية MVC. بعد تحديد جميع التبعيات التي ترغب في استخدامها في تطبيقك ، يمكنك المتابعة لإنشاء النقرات. سيؤدي هذا إلى تنزيل مشروع Boilerplate نيابة عنك.

الآن لديك مشروع Spring Boot (أحد مكتبات Spring). الخطوة الأخيرة هي استيراد المشروع إلى IDE المفضل لديك. سيكون لمشروع الربيع الخاص بك هيكل المشروع التالي:

  هيكل مشروع Spring Boot

هذا هو هيكل مشروع Maven العادي ، وهناك العديد من الملفات المهمة التي تحتاج إلى التعرف عليها.

  • Pom.xml: يحتوي هذا على بيانات تكوين تطبيق Spring.
  • OnlineShopaholicsApplication.java: هذه هي فئة Spring Boot الرئيسية ، والتي تقوم بتنفيذ التطبيق.
  • OnlineShopaholicsApplicationTest.java: هذا ملف اختبار JUnit فئة تضمن تحميل سياق تطبيق Spring (أو الحاوية) بشكل صحيح.

تشغيل تطبيق الربيع

يحتوي فصل Spring's bootstrap ، وهو في هذه الحالة فئة OnlineShopaholicsApplication ، على الكود الأولي التالي:

 package com.onlineshopaholics; 

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class OnlineShopaholicsApplication {
    public static void main(String[] args) {
        SpringApplication.run(OnlineShopaholicsApplication.class, args);
    }
}

أحد أهم جوانب الكود أعلاه هو تضمين التغريدة التعليق التوضيحي ، وهو تعليق توضيحي مركب يسمح لتطبيقك بالوصول إلى ميزات ثلاثة تعليقات توضيحية أخرى:

  • EnableAutoconfiguration: يتيح هذا التعليق التوضيحي التكوين التلقائي لـ Spring Boot. هذا يعني أنه يخبر Spring Boot لتكوين أي مكون يعتقد أن تطبيقك سيحتاجه ليعمل.
  • ComponentScan: يسمح لك هذا التعليق التوضيحي بتمكين فحص المكونات. هذه الميزة مهمة ، فهي تسمح لـ Spring باكتشاف المكونات المشروحة الأخرى وتسجيلها تلقائيًا لاستخدامها في سياق تطبيق Spring (أو الحاوية).
  • SpringBootConfiguration: هذا شكل متخصص من التعليق التوضيحيConfigureation ، والذي يسمح لك بتسجيل الفول (أو الكائنات) في سياق تطبيق Spring.

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

كيفية تغيير البريد الإلكتروني الافتراضي على جوجل
 package com.onlineshopaholics; 

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class OnlineShopaholicsApplication {
    public static void main(String[] args) {
        SpringApplication.run(OnlineShopaholicsApplication.class, args);
    }

    @GetMapping("/customer")
    public String Welcome(@RequestParam(value = "name", defaultValue = "Customer") String name) {
        return String.format("Welcome %s!", name);
    }
}

يحتوي تطبيق Spring Boot الآن على ثلاثة تعليقات توضيحية جديدة:

  • RestController: يحدد هذا التعليق التوضيحي الفئة على أنها وحدة تحكم ، لذا فإن كل طريقة في الفئة أعلاه (بصرف النظر عن main ()) ستعيد كائن مجال بدلاً من طريقة عرض.
  • GetMapping: هذا التعليق التوضيحي يرسم طلبات HTTP GET إلى طرق رأس معينة. لذلك ، في كل مرة تنشئ فيها طلبًا لـ '/ customer' في المتصفح ، ستتعامل طريقة الترحيب () مع الطلب من خلال إرجاع قيمة سلسلة.
  • RequestParam: يشير هذا التعليق التوضيحي إلى ضرورة ربط معلمة الأسلوب بمعامل طلب ويب.

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

هناك الكثير من المعلومات المهمة في الإخراج. يخبرك أن الخادم قيد التشغيل ، ويخبرك بالمدة التي استغرقتها عملية التهيئة ، ويخبرك بالمنفذ الذي يعمل عليه التطبيق (8080 ، افتراضيًا). لذلك ، إذا انتقلت إلى http://localhost:8080/customer سترى الناتج التالي في متصفحك:

  الربيع إخراج متصفح التطبيق

يمكنك الآن تصميم عرض التطبيق الخاص بك

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

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