إدخال JSON

مخرجات Scala

ما هو محوّل JSON إلى Scala؟

تستخدم Scala case classes للبيانات المنظمة. عند استخدام JSON مع Circe أو Play JSON، تحتاج إلى تعريفات case class مناسبة. تُعرِّف مواصفة JSON الكائنات والمصفوفات والنصوص والأرقام والقيم المنطقية، لكن Scala تحتاج إلى تعريفات صريحة لكل كائن متداخل.

تُولِّد هذه الأداة case classes في Scala من JSON. فعِّل Case Class للبيانات غير القابلة للتعديل. فعِّل أنواع Option للحقول الاختيارية. يعمل المخرج مع Circe أو Play JSON أو json4s.

تتم عملية التحويل بالكامل في المتصفح. لا يُرسل JSON إلى أي خادم.

متى يكون تحويل JSON إلى Scala مفيداً

عند بناء تطبيقات Scala أو Akka التي تستهلك واجهات REST البرمجية وتحتاج إلى case classes مكتوبة. الصق استجابة نموذجية هنا لتوليد الكلاسات المناسبة.

كيفية استخدام هذه الأداة

1

الصق أو ارفع JSON

انسخ JSON والصقه في المحرر الأيسر. يمكنك أيضاً النقر على رفع الملف لتحميل ملف. استخدم زر تحميل مثال للحصول على بيانات اختبارية. حدد اسم case class والخيارات في لوحة الإعداد.

2

مراجعة الكلاسات المُولَّدة

تعرض اللوحة اليمنى case classes في Scala المُولَّدة. تصبح الكائنات المتداخلة case classes منفصلة. تصبح المصفوفات <code>List[T]</code>. إذا كانت بنية JSON غير صالحة، استخدم أولاً منسق JSON أو التحقق من JSON لإصلاحها.

3

نسخ أو تنزيل

استخدم نسخ أو تنزيل للحصول على الكود. الصقه في مشروع Scala الخاص بك. أضف Circe أو Play JSON إلى ملف البناء لتحليل JSON.

أمثلة JSON إلى Scala

مثال على توليد case classes في Scala من كائن JSON.

مثال: سجل مشترك

إدخال JSON:

إدخال JSON

مخرجات Scala المُولَّدة:

المخرجات

متى يكون تحويل JSON إلى Scala مفيداً

يحتاج معظم المطورين إلى هذا عند دمج واجهات REST البرمجية. الصق هنا واحصل على case classes للاستخدام مع Circe أو Play JSON.

إذا كنت بحاجة إلى دمج ملفين JSON أولاً، استخدم أداة دمج JSON المنفصلة لذلك.

كثيراً ما تكون استجابات الواجهات البرمجية أو ملفات الإعداد أو صادرات البيانات بصيغة JSON. شغِّلها هنا لتوليد case classes في Scala.

الأسئلة الشائعة

Case class مقابل كلاس عادي؟

Case classes غير قابلة للتعديل بشكل افتراضي وتُوفِّر equals وhashCode وcopy. تتكامل جيداً مع Circe وPlay JSON.

Option للحقول الفارغة؟

فعِّل أنواع Option للحقول الاختيارية في JSON. يُغلِّف الحقول القابلة للفارغة في Option[T].

هل تُرسل البيانات إلى أي مكان؟

لا. تتم عملية التوليد بالكامل في المتصفح. لا تُرسل أي بيانات إلى الخادم.

هل يمكنني استخدامه مع Circe؟

نعم. تعمل case classes المُولَّدة مع Decoder وEncoder في Circe. أضف io.circe %% "circe-generic" للاشتقاق التلقائي.

ماذا يحدث للكائنات المتداخلة؟

تصبح كائنات JSON المتداخلة case classes منفصلة في Scala. تصبح المصفوفات List[T] من تلك الأنواع.

أدوات ذات صلة

JSON في Scala — انظر Circe وPlay JSON. JSON — انظر مواصفة JSON.