انتقل إلى المحتوى
أمين أبوزيد
درس مخطط لهJNR-034-L05

عرض عملي: سباق بين طلبين على قيد Unique

  • الدرس 5 من 5
  • Junior
في هذا الدرس 3 موضوعات

هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.

نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.

في هذا الدرس

prove the application check fails under concurrency and the constraint saves you; prepares JNR-034-LAB1.

تفاصيل المخطط المبدئي

خطوة بخطوة

  1. Implement createProduct as if (!repo.existsBySku(sku)) repo.save(...) with no constraint.
  2. Fire two concurrent requests with the same SKU (two threads released by a CountDownLatch).
  3. Planned mistake: run it and show two rows with the same SKU.
  4. Add V3__unique_sku.sql (clean the duplicate first), then re-run.
  5. Map the violation to 409 in the exception handler.
  6. Result: one 201 and one 409, every time.

التطبيق

طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.

المختبر والتمارين الاختبار

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

اكتب للبحث في المستويات والمراحل والوحدات والدروس.