الدليل التعليمي للربيع – دروس إطار الربيع الأساسية

الربيع هو واحد من أكثر الإطارات استخدامًا في تطبيقات جافا EE. لقد كتبت الكثير عن دروس الربيع وهذه ملخصات تعمل كفهرس للانتقال من خلالها بالترتيب.

دروس الربيع

جميع دروس الربيع مرفقة بمشاريع توضيحية يمكنك تنزيلها من صفحات الدروس.

دروس النواة الرئيسية للربيع

يعتمد إطار الربيع على مبدأين تصميمين – حقن التبعية و برمجة الجوانب. يرجى الانتقال إلى الدروس أدناه لتعلم المفاهيم الأساسية للربيع مع أمثلة على التنفيذ.

  1. إطار الربيع نظرة سريعة على تطور إطار الربيع، وهندسته، ومكوناته الأساسية، والمبادئ التي توجه تطوير هذا الإطار المذهل.
  2. مثال حول حقن التبعيات في جافا يقدم هذا المنشور أساسيات حقن التبعيات وكيف يمكننا تنفيذ نمط حقن التبعيات في تطبيقات جافا البسيطة. إنه نقطة جيدة للبداية ثم الانتقال إلى حقن التبعيات في الربيع.
  3. حقن التبعيات في الربيع يهدف هذا البرنامج التعليمي إلى توفير مثال على حقن التبعيات في إطار الربيع مع كل من التكوين القائم على التعليقات والتكوين القائم على التمثيل الشجري للمستندات (XML). يتضمن البرنامج التعليمي أيضًا برنامج اختبار JUnit للتحقق من التنفيذ.
  4. مثال على البرمجة الشيءية في الربيع يشرح هذا البرنامج التعليمي مفاهيم أساسية لبرمجة الجوانب الموجهة نحو الجوانب مثل الجانب، النصيحة، نقطة الانقطاع، نقطة الالتقاء، بروكسي البرمجة الشيءية والنسج. يشرح البرنامج التعليمي أيضًا حول أنواع مختلفة من النصائح مع برنامج بسيط.
  5. مثال على تحليل أداء الطريقة في البرمجة الشيءية في الربيع
  6. حاوية Spring IoC ومثال تعليمي على Spring Bean يهدف هذا البرنامج التعليمي إلى شرح المفاهيم الأساسية لحاوية Spring IoC و Spring Bean مع برامج مثال. يشرح البرنامج التعليمي حول حاوية IoC وفئاتها الأساسية والطرق المختلفة لإنشاء ApplicationContext. يشرح البرنامج التعليمي أيضًا حول Spring Bean ونطاقاتها والطرق المختلفة لتكوين Spring Bean – XML، التعليق، وبناءًا على Java من خلال مشروع مثال.
  7. نطاقات Spring Bean تتيح لنا نطاقات Spring Bean السيطرة الدقيقة على إنشاء حالات الفول.
  8. مثال على توصيل Spring Bean تلقائيًا حاوية Spring IoC ذكية لتحديد الفول لحقن التبعيات من خلال سمة “spring autowire”. يشرح هذا البرنامج التعليمي حول أنواع مختلفة من التوصيل التلقائي مع مشروع مثال.
  9. دورة حياة فول الربيع الفول الربيعي هي الجزء الأكثر أهمية في أي تطبيق Spring. يتحمل Spring ApplicationContext مسؤولية تهيئة الفول الربيعية المعرفة في ملف تكوين فول الربيع. توضح هذه الدورة التعليمية الطرق المختلفة التي يمكننا من خلالها توفير طرق ما بعد التهيئة وطرق ما قبل الإزالة في فول ربيع – واجهات InitializingBean/DisposableBean أو سمات init-method/destroy-method. يدعم إطار Spring أيضًا التعليمات البرمجية @PostConstruct و @PreDestroy لتحديد طرق ما بعد التهيئة وما قبل الإزالة. هذه التعليمات هي جزء من حزمة javax.annotation. ستتعلم أيضًا عن واجهات Spring Aware التي يمكنك استخدامها لحقن كائنات واجهة برمجة التطبيقات Servlet إلى فول الربيع.
  10. Spring 5 تم إطلاق Spring 5 في أواخر عام 2017. يجلب Spring 5 تحديثًا ضخمًا إلى إطار Spring.
  11. Spring WebFlux Spring WebFlux هو الوحدة الجديدة المقدمة في Spring 5. Spring WebFlux هي الخطوة الأولى نحو نموذج البرمجة الردية في إطار الربيع.
  12. Spring Data JPA
    Spring Data JPA هو جزء من عائلة Spring Data. يُسهّل Spring Data إنشاء تطبيقات مدفوعة بنظام Spring التي تستخدم طرقًا جديدة للوصول إلى البيانات، مثل قواعد البيانات غير العلاقية، وإطارات تقليل الخريطة، وخدمات السحابة، بالإضافة إلى دعم قواعد بيانات علاقية متقدمة بشكل جيد.

Spring Annotations

  1. Spring Annotations
    نظرة سريعة على أهم التعليقات في إطار الربيع.
  2. Spring @Bean
    تُطبق تعليقات Spring @Bean على الطريقة لتحديد أنها تُرجع بينًا يجب إدارته بواسطة سياق Spring. يُعلن عادة عن تعليق Bean Spring في طرق الفئات التكوينية.
  3. Spring @Service
    تعليق Spring @Service هو تخصص لتعليق @Component. يمكن تطبيق تعليق خدمة Spring فقط على الفئات. يُستخدم لتحديد الفئة كمزود خدمة.
  4. Spring @Component تُستخدم تعليقات Spring Component لتحديد فئة كمكون. هذا يعني أن إطار Spring سيكتشف هذه الفئات تلقائيًا لحقن التبعية عند استخدام التكوين القائم على التعليقات وفحص مسار الفئة.
  5. Spring @RestController تُعتبر تعليقات Spring RestController تعليقًا مريحًا مُحسَّنًا بذاته والذي يُشير بتعليقات @Controller و @ResponseBody. يُطبق هذا التعليق على فئة لوضع علامة عليها كمعالج طلبات.
  6. Spring @Controller تعليقات Spring Controller هي تخصص لتعليق @Component. تُستخدم تعليقات Spring Controller عادةً بالتزامن مع أساليب المعالج المحددة بتعليقات المطابقة الطلبات.
  7. Spring @Repository تُستخدم تعليقات Spring @Repository للإشارة إلى أن الفئة توفر آلية للتخزين واسترداد والبحث وتحديث وحذف العمليات على الكائنات.
  8. تكوين الربيع @Configuration تعتبر تعليمة Spring @Configuration جزءًا من إطار الربيع الأساسي. تشير تعليمة تكوين الربيع إلى أن الفئة تحتوي على أساليب تعريف @Bean. بالتالي يمكن لحاوية الربيع معالجة الفئة وإنشاء فول الربيع التي يمكن استخدامها في التطبيق.
  9. تكوين الربيع @Value تستخدم تعليمة Spring @Value لتعيين قيم افتراضية للمتغيرات والمعاملات الطريقة. يمكننا قراءة متغيرات البيئة الربيعية وكذلك متغيرات النظام باستخدام تعليمة @Value.
  10. تكوين الربيع @PropertySource تستخدم تعليمة Spring @PropertySource لتوفير ملف الخصائص إلى بيئة الربيع. تستخدم هذه التعليمة مع فئات @Configuration.
  11. الربيع @PostConstruct و @PreDestroy عندما نقوم بتعليق طريقة في Spring Bean بتعليق @PostConstruct ، يتم تنفيذها بعد تهيئة حبوب الربيع. عندما نقوم بتعليق طريقة Spring Bean بتعليق PreDestroy ، يتم استدعاؤها عندما يتم إزالة مثيل الحبوب من السياق.
  12. الربيع @Async تعليق الربيع @Async يسمح لنا بإنشاء طرق غير متزامنة في الربيع. دعونا نستكشف @Async في هذا البرنامج التعليمي عن الإطار الربيع.

برامج تعليمية للربيع

  1. برنامج تعليمي للربيع
  2. مكونات الربيع Boot
  3. Spring Boot @SpringBootApplication ، فئة SpringApplication تُستخدم تعليقة Spring Boot @SpringBootApplication لتحديد فئة تكوين تعلن أحد أو أكثر من طرق @Bean وتُشغل أيضًا تكوين تلقائي وفحص المكون. تُستخدم فئة SpringApplication في Spring Boot لإطلاق تطبيق Spring من طريقة رئيسية في جافا.
  4. Spring Boot REST يشرح هذا البرنامج التعليمي كيفية إنشاء خدمات ويب REST باستخدام وحدة Spring Boot.
  5. Spring Boot MongoDB تعلم كيفية استخدام MongoDB في تطبيق Spring Boot.
  6. Spring Boot Redis Cache يشرح هذا المقال كيفية دمج ذاكرة التخزين المؤقت Redis في تطبيق spring boot.
  7. Spring Boot Elasticsearch يشرح هذا المقال كيفية دمج Elasticsearch مع تطبيق spring boot.
  8. نقاط نهاية Spring Boot Actuator تتيح لنا نقاط نهاية Spring Boot Actuator مراقبة والتفاعل مع تطبيقنا. Spring Actuator هو فرع فرعي لـ Spring Boot ويوفر نقاط نهاية مدمجة يمكننا تمكينها وتعطيلها لتطبيقنا.
  9. واجهة الويب Spring Boot Initializr
  10. مثال Spring Boot CLI
  11. Spring Boot – لا يمكن تحديد فئة مشغل قاعدة بيانات مضمنة لنوع قاعدة البيانات NONE
  12. أسئلة مقابلة Spring Boot

دليل تعليمي Spring MVC

  1. دليل تعليمي Spring MVC للمبتدئين باستخدام Spring Tool Suite تساعدنا وحدات Spring MVC في إنشاء تطبيقات ويب قائمة على جافا. هذه هي المشاركة الأولى في سلسلة Spring MVC وستتعلم كيفية استخدام Spring Tool Suite (STS) وإنشاء تطبيق ويب بسيط باستخدام إطار Spring MVC.
  2. مثال Spring MVC يشرح هذا البرنامج التعليمي كيفية إنشاء تطبيق Spring MVC باستخدام Maven ومحرر Eclipse دون استخدام Spring Tool Suite.
  3. مثال خدمة الويب الراحة Spring مع JSON يوفر إطار Spring دعمًا مدمجًا لواجهة برمجة التطبيقات Jackson JSON، ويمكننا الاستفادة منها لإنشاء خدمة ويب راحة ستعيد استجابة JSON. يشرح هذا البرنامج التعليمي جميع الأجزاء المختلفة في التطبيق اللازمة لتكوين تطبيقنا ليعيد استجابة JSON وتنفيذ واجهة برمجة التطبيقات الراحة.
  4. Spring REST XML و JSON يدعم Spring REST كل من رسائل الطلب والاستجابة المستندة على XML و JSON. يشرح هذا البرنامج التعليمي كيف يمكننا دعم كل منهما بسهولة باستخدام تكوينات بسيطة.
  5. Spring RestTemplate يوفر Spring RestTemplate طريقة مريحة لاختبار خدمات الويب الراحة. يمكننا استخدام RestTemplate لاختبار خدمات الويب الراحة القائمة على HTTP، لكنه لا يدعم بروتوكول HTTPS.
  6. مثال على تحميل ملفات Spring MVC تحميل الملفات هو واحد من المهام الشائعة لتطبيق الويب، ولهذا السبب يوفر Spring دعمًا مدمجًا لتحميل الملفات من خلال دمج واجهة برمجة التطبيقات لـ Apache Commons FileUpload. تهدف هذه الدورة التعليمية إلى توفير فهم لكيفية تكوين مكونات مختلفة مع مثال على تحميل ملفات فردية ومتعددة.
  7. مثال على التدويل والتعريب في Spring MVC بالنسبة لأي تطبيق ويب مع مستخدمين من جميع أنحاء العالم، فإن التدويل (i18n) أو التعريب (L10n) مهم جدًا لتفاعل أفضل مع المستخدم. توفر معظم إطارات تطبيقات الويب طرقًا سهلة لتعريب التطبيق بناءً على إعدادات لغة المستخدم المحلية. تتبع Spring أيضًا هذا النمط وتوفر دعمًا واسعًا للتدويل (i18n) من خلال استخدام المحولات في Spring ومحللات لغة المحلية ومجموعات موارد للمواقع المختلفة. تشرح هذه الدورة التعليمية عملية i18n و L10n في تطبيق ويب Spring من خلال مشروع توضيحي.
  8. مثال تحقق الصحة في تطبيق Spring MVC Form عند قبول مدخلات المستخدم في أي تطبيق ويب، يصبح من الضروري التحقق من صحتها. يمكننا التحقق من مدخلات المستخدم على الجانب العميل باستخدام JavaScript ولكن من الضروري أيضًا التحقق منها على الجانب الخادم للتأكد من أننا نقوم بمعالجة بيانات صالحة في حالة تعطيل المستخدم لـ JavaScript. يدعم إطار Spring MVC مواصفات JSR-303 بشكل افتراضي وكل ما نحتاجه هو إضافة JSR-303 وتبعياتها في تطبيق Spring MVC. توفر Spring أيضًا تعليق @Validator وفئة BindingResult التي من خلالها يمكننا الحصول على الأخطاء التي يثيرها تنفيذ المحقق في طريقة معالج الطلبات في المتحكم. يوفر البرنامج التعليمي مثالًا على التحقق من النموذج باستخدام التعليقات ويشرح أيضًا العملية لإنشاء محقق مخصص خاص بنا.
  9. معالجة الاستثناءات في Spring MVC يتطلب أي تطبيق ويب تصميمًا جيدًا لمعالجة الاستثناءات لأننا لا نريد تقديم صفحة تم إنشاؤها بواسطة الحاوية عندما يتم طرح استثناء غير معالج من قبل تطبيقنا. يوفر إطار Spring MVC نهجًا لمعالجة الاستثناءات قوي في فئات المتحكم، ومعالج الاستثناءات العام، ومن خلال تنفيذ HandlerExceptionResolver. تحقق من مشروع المثال في البرنامج التعليمي لمعرفة المزيد حول معالجة الاستثناءات في Spring MVC.
  10. مثال على المعاملات الوسيطة لـ Spring MVC في بعض الأحيان نريد التدخل في طلب HTTP والقيام ببعض المعالجة قبل تسليمه إلى أساليب معالج متحكم البرنامج الثابت للربيع. هنا تكون معاملات وسيط Spring MVC مفيدة. يمكننا إنشاء معاملات وسيطة خاصة بنا في Spring سواء عن طريق تنفيذ واجهة org.springframework.web.servlet.HandlerInterceptor أو عن طريق تجاوز الفئة المجردة org.springframework.web.servlet.handler.HandlerInterceptorAdapter التي توفر التنفيذ الأساسي لهذه الواجهة. تحقق من مشروع المثال في البرنامج التعليمي لمعرفة المزيد حول معاملات وسيط Spring MVC.
  11. مثال على تطبيق Spring MVC RequestMapping @RequestMapping هو أحد أكثر الإعلانات استخداماً في Spring MVC. تستخدم تعليق org.springframework.web.bind.annotation.RequestMapping لتعيين طلبات الويب على فئات معالج محددة و/أو أساليب معالج. يمكن تطبيق @RequestMapping على فئة المتحكم بالإضافة إلى الأساليب. يشرح هذا البرنامج التعليمي استخدامات مختلفة مع الأمثلة والبرنامج التجريبي.
  12. إدارة جلسة الربيع يوفر وحدة Spring Session APIs وتنفيذًا لإدارة جلسة المستخدم في تطبيق الويب. تفصل Spring Session بين منطق إدارة الجلسة وتطبيق الويب، مما يجعله أكثر تسامحًا في حالة الأخطاء. تتألف Spring Session من الوحدات التالية: Spring Session Core، Spring Session JDBC، Spring Session Data Redis، و Spring Session Hazelcast.
  13. مثال Spring MVC Gradle

دروس Spring Batch

  1. Spring Batch يسمح Spring Batch لنا بمعالجة عدد كبير من السجلات بسهولة من خلال إنشاء دفعات. يشرح هذا المقال مفهوم Spring Batch وبنيته ومتى يتعين استخدام تطبيق Spring Batch.
  2. مثال Spring Batch يشرح هذا البرنامج التعليمي كيفية إنشاء مشروع Spring Batch لمعالجة ملفات CSV كبيرة.

برنامج تعليمي Spring JDBC

معظم تطبيقات المؤسسات تتعامل مع قواعد البيانات العلاقية. ولهذا السبب، توفر Spring دعمًا واسعًا لواجهة برمجة تطبيقات JDBC وتوفر أيضًا أغلفة لأداء عمليات CRUD في قاعدة البيانات.

  1. عمليات CRUD باستخدام Spring JDBC وJdbcTemplate مع مثال على الوسيطة يوفر إطار Spring تكاملًا ممتازًا مع واجهة برمجة تطبيقات JDBC ويوفر فئة JdbcTemplate للمساعدة في تجنب كتابة الشيفرة المملة في منطق عمليات قاعدة البيانات مثل فتح/إغلاق الاتصال، ResultSet، PreparedStatement، إلخ. يقدم هذا البرنامج التعليمي مثالًا على عمليات CRUD باستخدام تكامل Spring JDBC.
  2. مثال على مصدر بيانات Spring DataSource JNDI مع Tomcat نعلم أيضًا أن استخدام مصدر البيانات مع JNDI هو الطريقة المفضلة لتحقيق تجميع الاتصال والاستفادة من تنفيذات الحاويات. يوضح هذا البرنامج التعليمي كيف يمكننا استخدام مصدر البيانات المعرف في حاوية tomcat كمورد JNDI للحصول على اتصال بقاعدة البيانات وأداء عمليات مختلفة. هذه الطريقة المفضلة للحصول على اتصالات قاعدة البيانات في تطبيق ويب Spring لأن الحاوية تعتني بإدارة موارد قاعدة البيانات.
  3. مثال على إدارة المعاملات في الربيع باستخدام JDBC إدارة المعاملات هي مهمة تافهة في أي تطبيق تجاري. يوفر الربيع دعمًا واسعًا لإدارة المعاملات ويساعد المطورين على التركيز أكثر على منطق الأعمال بدلاً من القلق حول سلامة البيانات. إدارة المعاملات الوصفية في الربيع هي النهج المفضل لإدارة المعاملات لأنها سهلة الاستخدام للغاية وليس هناك تبعية مباشرة، حيث يستخدم البرنامج النصي وحقن التبعية.
  4. Spring JdbcTemplate فئة Spring JdbcTemplate هي النواة الأساسية لوحدة Spring JDBC. توفر طرقًا متنوعة لتنفيذ استعلامات SQL وقراءة بيانات مجموعة النتائج، إلخ.

دليل Hibernate في الربيع

الربيع هو واحد من أكثر أطُر البرمجة في جافا و Hibernate هو أفضل إطار ORM في السوق. ولهذا السبب، يوفر الربيع دعمًا مدمجًا لـ Hibernate في وحدة Spring ORM.

  1. مثال على تكامل Hibernate في الربيع يقدم هذا الدليل تفاصيل كاملة مع مثال لتكامل Hibernate مع تطبيق Spring مستقل. يظهر المثال التكامل بين الربيع 4 + Hibernate 4 وكذلك الربيع 4 + Hibernate 3.
  2. مثال CRUD Spring MVC Hibernate يمكن دمج Spring MVC بسهولة مع إطار عمل Hibernate. بالإضافة إلى ذلك، يمكننا استخدام إدارة المعاملات الإعلانية في Spring، مما يجعل تطبيقنا خاليًا من رمز البويلربليت.
  3. مثال ORM Spring
  4. إدارة المعاملات Spring ORM مع AOP

برنامج تعليمي Spring Security

يمكن تطبيق Spring Security على أي تطبيق ويب جافا، حيث يعمل كجزء منفصل من التطبيق ويوفر طرقًا مختلفة للمصادقة والترخيص.

  1. Spring Security في تطبيق ويب Servlet يشرح هذا البرنامج التعليمي أساسيات وحدة الأمان في Spring. كما يوفر مثالًا للمصادقة بناءً على الذاكرة، DAO، و JDBC مع مشروع توضيحي.
  2. مثال أمان Spring MVC إذا كنا نستخدم إطار Spring MVC ، فإن تطبيق الأمان باستخدام Spring Security سهل للغاية لأن لدينا بالفعل تكوينات مبنية على Spring. كل ما نحتاج إليه هو توصيل التكوينات المتعلقة بالأمان.
  3. أمان Spring 4 يشرح هذا المقال حول وحدة Spring Security المقدمة في Spring 4.
  4. أمان Spring MVC يشرح هذا المقال كيفية استخدام Spring Security في تطبيق Spring MVC.
  5. تخويل الوصول بناءً على الأدوار في Spring Security

برامج تعليمية حول دمج Spring

  1. مثال تعليمي حول دمج Spring مع JSF JSF هو إطار قائم على المكونات مع التركيز الكبير على واجهات المستخدم بينما تكمن مبدأ Spring الأساسي في حقن الاعتمادات. يشرح هذا البرنامج التعليمي كيفية الحصول على الأفضل من هذه العناصر من خلال دمج JSF مع إطار Spring.
  2. برايمفيس Spring & Hibernate Integration مثال تعليمي هذا أحد أمثلة الاندماج حيث شرحنا كيفية دمج برايمفيس مع إطار العمل Spring و Hibernate. هذا مزيج مستخدم بشكل شائع للحصول على أقصى استفادة من كل من الأطر العمل.
  3. برايمفيس Hibernate SpringRoo Integration مثال SpringRoo هو أداة برمجية مفتوحة المصدر تستخدم مفهوم التحكم عبر التكوين لتيسير إنتاج تطبيقات البرمجيات الشركاتية القائمة على جافا بطريقة مدفوعة من سطر الأوامر. يشرح هذا البرنامج التعليمي حول الاندماج بين إطار العمل SpringRoo وبرايمفيس و Hibernate.

رسائل الربيع

  1. ربيع AMQP
  2. ربيع RabbitMQ
  3. مثال ربيع RabbitMQ
  4. ربيع ActiveMQ الجزء الأول
  5. ربيع ActiveMQ الجزء الثاني

أسئلة مقابلة الربيع

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

Source:
https://www.digitalocean.com/community/tutorials/spring-tutorial-spring-core-tutorial