الهدف الأساسي لمشروع Spring Data هو تسهيل إنشاء التطبيقات التي تعمل بنظام Spring والتي تستخدم تقنيات الوصول إلى البيانات الجديدة مثل قواعد البيانات غير العلائقية، وأطر عمل تقليل الخرائط، وخدمات البيانات المستندة إلى السحابة.
يهدف مشروع Spring Data MongoDB إلى توفير نموذج برمجة مألوف ومتسق قائم على Spring لمخازن البيانات الجديدة مع الاحتفاظ بالميزات والقدرات الخاصة بالمتجر. يوفر مشروع Spring Data MongoDB التكامل مع قاعدة بيانات مستندات MongoDB. تعد المجالات الوظيفية الرئيسية لـ Spring Data MongoDB نموذجًا مركزيًا POJO للتفاعل مع Document
MongoDB وكتابة طبقة الوصول إلى البيانات على نمط المستودع بسهولة.
يخضع هذا المشروع لمدونة قواعد السلوك الخاصة بالربيع. من خلال المشاركة، يُتوقع منك الالتزام بقواعد السلوك هذه. يرجى الإبلاغ عن السلوك غير المقبول إلى [email protected].
إليك إعلان تشويقي سريع لتطبيق يستخدم Spring Data Repositories في Java:
public interface PersonRepository extends CrudRepository < Person , Long > {
List < Person > findByLastname ( String lastname );
List < Person > findByFirstnameLike ( String firstname );
}
@ Service
public class MyService {
private final PersonRepository repository ;
public MyService ( PersonRepository repository ) {
this . repository = repository ;
}
public void doWork () {
repository . deleteAll ();
Person person = new Person ();
person . setFirstname ( "Oliver" );
person . setLastname ( "Gierke" );
repository . save ( person );
List < Person > lastNameResults = repository . findByLastname ( "Gierke" );
List < Person > firstNameResults = repository . findByFirstnameLike ( "Oli*" );
}
}
@ Configuration
@ EnableMongoRepositories
class ApplicationConfig extends AbstractMongoClientConfiguration {
@ Override
protected String getDatabaseName () {
return "springdata" ;
}
}
أضف تبعية Maven:
< dependency >
< groupId >org.springframework.data</ groupId >
< artifactId >spring-data-mongodb</ artifactId >
< version >${version}</ version >
</ dependency >
إذا كنت تفضل الحصول على أحدث اللقطات من الإصدار الرئيسي القادم، فاستخدم مستودع لقطات Maven الخاص بنا وأعلن عن إصدار التبعية المناسب.
< dependency >
< groupId >org.springframework.data</ groupId >
< artifactId >spring-data-mongodb</ artifactId >
< version >${version}-SNAPSHOT</ version >
</ dependency >
< repository >
< id >spring-snapshot</ id >
< name >Spring Snapshot Repository</ name >
< url >https://repo.spring.io/snapshot</ url >
</ repository >
تتوفر إرشادات حول كيفية الترقية من الإصدارات السابقة من Spring Data على موقع wiki الخاص بالمشروع. اتبع الروابط الموجودة في قسم ملاحظات الإصدار للعثور على الإصدار الذي تريد الترقية إليه.
هل تواجه مشكلة مع بيانات الربيع؟ نحن نحب أن نساعد!
تحقق من الوثائق المرجعية وJavadocs
تعلم أساسيات Spring - تعتمد Spring Data على Spring Framework، قم بمراجعة موقع Spring.io الإلكتروني للحصول على مجموعة كبيرة من الوثائق المرجعية. إذا كنت قد بدأت للتو مع فصل الربيع، فجرّب أحد الأدلة.
إذا كنت تقوم بالترقية، فاطلع على سجل التغييرات لمعرفة الميزات "الجديدة والجديرة بالملاحظة".
اطرح سؤالاً - نحن نراقب موقع stackoverflow.com للأسئلة الموسومة بـ spring-data-mongodb
. يمكنك أيضًا الدردشة مع المجتمع على Gitter.
قم بالإبلاغ عن الأخطاء في Spring Data MongoDB على github.com/spring-projects/spring-data-mongodb/issues.
تستخدم Spring Data Github كنظام لتتبع المشكلات لتسجيل الأخطاء وطلبات الميزات. إذا كنت تريد إثارة مشكلة ما، يرجى اتباع التوصيات أدناه:
قبل تسجيل خطأ ما، يرجى البحث في أداة تعقب المشكلات لمعرفة ما إذا كان شخص ما قد أبلغ عن المشكلة بالفعل.
إذا لم تكن المشكلة موجودة بالفعل، قم بإنشاء مشكلة جديدة.
يرجى تقديم أكبر قدر ممكن من المعلومات مع تقرير المشكلة، ونود أن نعرف إصدار Spring Data الذي تستخدمه، وإصدار JVM، وStacktrace، وما إلى ذلك.
إذا كنت بحاجة إلى لصق التعليمات البرمجية، أو تضمين تتبع المكدس، فاستخدم أسوار كود Markdown ```.
يحتوي موقع Spring.io على عدة أدلة توضح كيفية استخدام بيانات الربيع خطوة بخطوة:
يعد الوصول إلى البيانات باستخدام MongoDB دليلًا أساسيًا للغاية يوضح لك كيفية إنشاء تطبيق بسيط وكيفية الوصول إلى البيانات باستخدام المستودعات.
يعد الوصول إلى بيانات MongoDB باستخدام REST دليلًا لإنشاء خدمة ويب REST للكشف عن البيانات المخزنة في MongoDB من خلال المستودعات.
تحتوي أمثلة بيانات الربيع على أمثلة للمشاريع التي تشرح ميزات محددة بمزيد من التفاصيل.
لا تحتاج إلى البناء من المصدر لاستخدام بيانات الربيع. الثنائيات متاحة في repo.spring.io ويمكن الوصول إليها من Maven باستخدام تكوين Maven المذكور أعلاه.
ملحوظة | تكوين Gradle مشابه لـ Maven. |
أفضل طريقة للبدء هي إنشاء مشروع Spring Boot باستخدام MongoDB على start.spring.io. اتبع هذا الرابط لإنشاء تطبيق ضروري وهذا الرابط لإنشاء تطبيق تفاعلي.
ومع ذلك، إذا كنت ترغب في تجربة الأحدث والأفضل، فيمكن إنشاء Spring Data MongoDB بسهولة باستخدام غلاف Maven وبحد أدنى، JDK 17 (تنزيلات JDK).
من أجل إنشاء Spring Data MongoDB، ستحتاج إلى تنزيل وتثبيت توزيعة MongoDB.
بمجرد تثبيت MongoDB، تحتاج إلى تشغيل خادم MongoDB. من الملائم تعيين متغير بيئة لدليل تثبيت MongoDB (على سبيل المثال، MONGODB_HOME
).
لتشغيل مجموعة الاختبار الكاملة، يلزم توفر مجموعة النسخ المتماثلة من MongoDB.
لتشغيل خادم MongoDB، أدخل الأمر التالي من سطر الأوامر:
$ $MONGODB_HOME /bin/mongod --dbpath $MONGODB_HOME /runtime/data --ipv6 --port 27017 --replSet rs0
...
" msg " : " Successfully connected to host "
بمجرد بدء تشغيل خادم MongoDB، يجب أن تشاهد الرسالة ( msg
)، " تم الاتصال بالمضيف بنجاح ".
لاحظ خيار --dbpath
للأمر mongod
. يمكنك ضبط هذا على أي شيء تريده، ولكن في هذه الحالة، قمنا بتعيين المسار المطلق إلى دليل فرعي ( runtime/data/
) ضمن دليل تثبيت MongoDB (في $MONGODB_HOME
).
تحتاج إلى تهيئة مجموعة النسخ المتماثلة MongoDB مرة واحدة فقط في المرة الأولى التي يتم فيها تشغيل خادم MongoDB. لتهيئة مجموعة النسخ المتماثلة، قم بتشغيل عميل mongo:
$ $MONGODB_HOME /bin/mongo
MongoDB server version: 6.0.0
...
ثم أدخل الأمر التالي:
mongo > rs.initiate({ _id: ' rs0 ' , members: [ { _id: 0, host: ' 127.0.0.1:27017 ' } ] })
أخيرًا، في الأنظمة المستندة إلى UNIX (على سبيل المثال، Linux أو Mac OS X) قد تحتاج إلى ضبط ulimit
. إذا كنت بحاجة إلى ذلك، يمكنك ضبط ulimit
باستخدام الأمر التالي (32768 مجرد توصية):
$ ulimit -n 32768
يمكنك استخدام ulimit -a
مرة أخرى للتحقق من أنه تم تعيين ulimit
لـ " الملفات المفتوحة " بشكل مناسب.
أنت الآن جاهز لبناء Spring Data MongoDB. ما عليك سوى إدخال أمر mvnw
(Maven Wrapper) التالي:
$ ./mvnw clean install
إذا كنت تريد الإنشاء باستخدام أمر mvn
العادي، فستحتاج إلى الإصدار Maven v3.8.0 أو أعلى.
راجع أيضًا CONTRIBUTING.adoc إذا كنت ترغب في إرسال طلبات السحب، وعلى وجه الخصوص، يرجى التوقيع على اتفاقية المساهم قبل أول تغيير غير بسيط.
يؤدي إنشاء الوثائق أيضًا إلى إنشاء المشروع دون إجراء اختبارات.
$ ./mvnw clean install -Pantora
الوثائق التي تم إنشاؤها متاحة على target/antora/site/index.html
.
Spring Data MongoDB هو برنامج مفتوح المصدر تم إصداره بموجب ترخيص Apache 2.0.