JDOM

JDOM
Generell informasjon
programtype Bibliotek
utvikler JDOM-prosjektet
Tillatelse Apache-stil [1]
Teknisk informasjon
Planlagt inn Java programmeringsspråk
Støttede plattformer java virtuell maskin
Versjoner
Siste stabile versjon 2.0.4 (8. november 2012 (9 år, 11 måneder og 8 dager))
Lenker
Offesiell nettside kodelager


JDOM er et åpen kildekode - bibliotek for XML -datamanipulasjoner optimalisert for Java. Til tross for likheten med World Wide Web Consortium ( W3C ) DOM , er det et alternativt objektmodelleringsdokument som ikke er inkludert i DOM. Hovedforskjellen er at mens DOM ble opprettet for å være språknøytral og opprinnelig ble brukt til å manipulere HTML -sider med JavaScript , ble JDOM laget spesielt for bruk med Java og dermed dra nytte av Java-funksjoner, inkludert metodeoverbelastning, samlinger osv. For Java-programmerere er JDOM en mer naturlig og riktig utvidelse. Det ligner det Java-optimaliserte RMI -systemet (Remote Method Invocation), og passer bedre enn CORBA (Common Object Request Broker Architecture) som er mer språknøytralt.

Som et merkelig faktum, selv om JDOM ser ut til å være et akronym for J ava Document O bject M odel ( Java Object Modeling Document ), er ikke dette tilfellet, og blir avvist av JDOM-prosjektet [2] .

Eksempler

Anta at filen "foo.xml" er følgende:

<store name= "store for geeks" location= "Tokyo, Japan" > <datamaskinnavn = "iBook" price= "$1200" /> <comic name= "Dragon Ball Volume 1" price= "$9" /> <geek_level_of_store price= "ingen pris" /> </store>

Det er mulig å analysere XML-dokumentet til et Java-objekttre med JDom:

SAXBuilder builder = ny SAXBuilder (); Dokument doc = byggherre . build ( ny FileInputStream ( "foo.xml" )); Elementrot = doc . _ getRootElement (); rot . getName (); // returner "store" -roten . getAttributeValue ( "navn" ); // returnerer "shop for geeks" root . getAttributeValue ( "sted" ); // returnerer roten "Tokyo, Japan" . getChildren (); // returnerer en [[java.util.List]] av objekter som har tre elementer

Det er også mulig å gjøre den omvendte prosessen, dvs. bygge et tre med elementer og deretter lage en XML-fil:

Elementrot = nytt Element ( "butikk" ) ; rot . setAttribute ( "navn" , "geek shop" ); rot . setAttribute ( "sted" , "Tokyo, Japan" ); Element element1 = nytt Element ( "datamaskin" ); element 1 . setAttribute ( "navn" , "iBook" ); element 1 . setAttribute ( "pris" , "$1200" ); rot . addContent ( item1 ); // Vi gjør det samme med de gjenværende elementene XMLOutputter outputter = new XMLOutputter ( "" , true ); prøv { outputter . output ( nytt dokument ( root ), nytt FileOutputStream ( "foo2.xml" )); } catch ( Unntak e ) { e . getMessage (); }

Eksterne lenker