سؤال

في كل مرة بحثت عن شيء ما حول كيفية التسلسل إلى XML ، وجدت مسلسلات الفول. يبدو أنه يجب إعلان كل شيء كعقار ، وهو يهزم هدفي. أرغب في تسلسل التسلسلات الهرمية المعقدة (حتى تصل إلى البدائية ، بالطبع) في XML ، ابدأ بـ (على سبيل المثال) القاموس أو القائمة ككائن الأصل.

ما هي الخيارات الموجودة في التسلسل التلقائي XML؟

لقد وجدت بعض الإشارات إلى Jaxb من عام 2004 ، هل لا يزال هذا هو الطريق للذهاب؟

هل كانت مفيدة؟

المحلول

جرب ال Xstream مكتبة. سيقوم بسهولة بتسلسل أي تسلسل هرمي معقد يمكنك رميه.

نصائح أخرى

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

يمكنك استعمال ال اساسي java.bean.XMLEncoder / Decoder فصول لتسلسل المجموعات لأن الآلية تسمح بدعوة الأساليب عبر XML. يبدو الإخراج شيئا ما مثل:

<object class="java.util.ArrayList">
  <void method="add">
    <string>Hello</string>
  </void>
  <void method="add">
    <string>World</string>
  </void>
</object>

بالطبع هذا لديه نقاط ضعف. على سبيل المثال ، لا يمكنك بسهولة تخصيص ملف Collections.emptyXXXX() ولكن هناك حلول. ولكن لأن كل شيء يعمل حسب واجهة برمجة التطبيقات التي تدعمها علنا من الفئات ، يكون نموذج XML المستمر مرنًا لتغيير المخطط.

لقد وجدت أنها آلية مستمرة مفيدة للغاية لكائنات Java.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top