1. مقدمة
ما هو جدوم؟
JDOM هو مشروع مفتوح المصدر يعتمد على بنية شجرة ، باستخدام تقنية Java النقية لتحليل وإنشاء وتسلسل وتشغيل مستندات XML. إنه يخدم مباشرة برمجة Java ، ويستخدم ميزات لغة Java (تحميل الأسلوب ، والمجموعات) ، ويجمع بين وظائف SAX و DOM ، ويجعل تحليل XML الأصلي بسيطًا قدر الإمكان. سيكون من السهل علينا استخدام JDOM لتحليل XML.
مزايا JDOM:
1. JDOM مكرس لتكنولوجيا Java ويأخذ ذاكرة أقل من تطبيقات DOM.
2. يوفر JDOM طريقة أساسية وأبسط ومنطقي للوصول إلى معلومات XML
3. بالإضافة إلى ملف XML ، يمكن لـ JDOM أيضًا الوصول إلى مصادر بيانات أخرى ، على سبيل المثال ، يمكنك إنشاء فئات للوصول إلى البيانات من نتائج استعلام SQL.
تكوين JDOM:
يتكون JDOM من 6 حزم
تمثل فئة العناصر عناصر وثيقة XML
org.jdom: الفئة الأساسية التي يجب استخدامها لتحليل ملفات XML
org.jdom.adapters: فئة Java التي تحتوي على تعديلات Dom
org.jdom.filter: فئة مرشح تحتوي على مستندات XML
org.jdom.input: فئة Java التي تحتوي على قراءة مستندات XML
org.jdom.output: فئة تحتوي على مستند إخراج XML
نموذج org.jdom.trans: يحتوي على فئات Java التي تقوم بتحويل واجهة مستند JDOM XML إلى واجهات مستندات XML الأخرى
ما هو XML؟
XML هي لغة ترميز مستخدمة على نطاق واسع. هناك العديد من الطرق لتحليل XML في Java ، بما في ذلك أكثرها استخدامًا مثل JDOM و DOM4J و SAX ، إلخ.
تنزيل حزمة JDOM: http://www.jdom.org/downloads/index.html
ما هو رمز المؤلف هنا هو استخدام Java لإنشاء XML وقراءة XML ، والذي يستخدم فقط كمقدمة ملاحظة.
2. العملية
قم بتنزيل حزمة JDOM ، وفك ضغط الملفات JDOM-2.0.6.JAR ، JDOM-2.0.6-JAVADOC.JAR ، واستيراد الحزمة في مجلد LIB. (لاحظ ، إذا كان هناك أي خطأ ، استيراد جميع الحزم في JDOM)
مثال 1: قم بإنشاء ملف XML باستخدام JDOM مع اسم people.xml
إنشاء فئة جديدة careatejdom
package com.book void main (string [] args) {// تحديد عنصر العنصر ، الطالب ؛ people = عنصر جديد ("الأشخاص") ؛ الطالب = عنصر جديد ("الطالب") ؛ // قم بتعيين السمة الطالب. مستند مستند = مستند جديد (أشخاص) ؛ // اقرأ التنسيق وقم بتعيينه إلى تنسيق التنسيق الحالي = format.getCompactFormat () ؛ // تهيئة تنسيق التنسيق الحالي. Xmloutputter (تنسيق) ؛ حاول {// إرسال النص المكتوب إلى المصنع ، وقم بإنشاء دفق إخراج الملف لإخراج البيانات xmlout.output (doc ، fileOutputStream ("people.xml")) ؛ system.out.println ("النجاح!") ؛ (ioException e) {// todo catch blocke.printstacktrace () ؛}}/*running النتيجة: <؟مثال 2: استخدم ملف JDOM لتحرير الأشخاص
إنشاء فئة readxml جديدة
package com.book.jdom ؛ import java.io.ioException ؛ استيراد java.util.list ؛ استيراد org.jdom2.document ؛ استيراد org.jdom2.element ؛ استيراد org.jdom2.jdomexception ؛ استيراد org.jdom2.inpt.saxbuilder يمتلك XMLSaxBuilder sax = جديد saxbuilder () ؛ // إنشاء مستند لقبول مستند مستند البيانات ؛ حاول {// get people.xml docum doc = sax.build ("people.xml") ؛ لـ (int i = 0 ؛ i <list.size () ؛ i ++) {element e = list. (jdomexception e) {e.printstacktrace () ؛} catch (ioException e) {E.PrintStackTrace () ؛}}}/** النتيجة:* الاسم: Zhang San Salary: 8000 Hehe**//تحليل XML
طريقة للحصول على قيم سمة مختلفة لأسماء العلامات نفسها المتعددة باستخدام JDOM <؟ name = "photoidheight"> 38 </value> <key name = "vale"> <value name = "crownperCend"> 0.10 </value> <value name = "headpercent"> 0.60AdulTheAdperCens </value> </key> <sey name = "child" </key> <key name = "Australia"> <value name = "textkey"> أستراليا </value> <value name = "enabled"> true </value> <value name = "photoidwidth"> 35Photoidwidth </value> <value name = "pothoidheight"> 45 </value> name = "headpercent"> 0.756 "البالغ" headpercent </value> </key> <key name = "child"> <value name = "crownpercent name = "photoidwidth"> 35photoidwidth </value> <value name = "photoidheight"> 45 </value> <key name = "comple"> <value name = "crownpercent name = "crownpercent"> 0.078 </value> <value name = "headpercent"> 0.689ChildheadPercent </value> </key> </key> </configuration> إدخال الحزمة ؛ استيراد java.io.ioException ؛ استيراد java.util.arraylist ؛ استيراد java.util.list ؛ import orgdom org.jdom.jdomexception ؛ استيراد org.jdom.input.saxbuilder ؛ الطبقة العامة readxml { / ** * param args * / public static void main (string [] args) remrows jdomexception ، ioexception {saxbuilder sb = new saxbuilder () ؛ // بناء مستند وثيقة المستند doc = sb.build (test.class.getClassloader (). getResourCeasStream ("nation.xml")) ؛ // احصل على جذر عنصر الجذر = doc.getRootElement () ؛ // تحديد موقع <isiguration> -> <key> قائمة <Element> list = root.getChildren ("key") ؛ قائمة <Element> الأطفال = ArrayList جديد <element> () ؛ قائمة <Element> ChildRens = new ArrayList <Eemper> () ؛ لـ (int i = 0 ؛ i <list.size () ؛ i ++) {element element = (element) list.get (i) ؛ System.out.print (element.getAttributeValue ("name")) ؛ // تحديد موقع <isiguration> -> <key> -> <value> الأطفال = element.getChildren ("value") ؛ لـ (int j = 0 ؛ j <children.size () ؛ j ++) {elementChildren = (element) childs.get (j) ؛ // تحديد موقع <isiguration> -> <key> -> <value name = "photoidwidth"> if (elementChildren.getAttributeValue ("name"). متساوٍ ("photoidwidth")) System.out.print ("<-------------------" "+elementchildren.getAttributeValue (" name ")) ؛ // احصل على محتويات <fignituration>-> <key>-> <value name =" photoidwidth "> tag system.out.print (" ، "+elementchildren.gettext () ؛}}}}} <Kear> الأطفال = element.getChildren ("المفتاح") ؛ -> <kear> -> key name = "child" -> value> childrens = elementchildren.getChildren ("value") ؛ if (elementchildrens.getAttributeValue ("name"). يساوي ("headpercent")) {system.out.println ("<----------->"+elementchildrens.getText ()) ؛ }}}}} }} : الصين <---------> photoidwidth ، 38photoidwidth <---------> 0.60ChildheadPercentaustralia <---------> photoidwidth ، 35photoidwidth <-----------> 0.711ChildheadperCustriostria <---------> photoidwidth ، 35photoidwidth <---------------------ما سبق هو طريقة استخدام JDOM لتحليل XML في Java Web المقدمة لك. آمل أن يكون ذلك مفيدًا لك. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة لي وسوف يرد المحرر إليك في الوقت المناسب. شكرا جزيلا لدعمكم لموقع wulin.com!