Você está na página 1de 8

JDOM

JDOMes una biblioteca decdigo abiertopara manipulaciones


de datosXMLoptimizados para Java. A pesar de su similitud
conDOMdel consorcio World Wide Web (W3C), es una
alternativa como documento para modelado de objetos que no
est incluido en DOM.
La principal diferencia es que mientras que DOM fue creado
para ser un lenguaje neutral e inicialmente usado para
manipulacin de pginasHTMLconJavaScript, JDOM se cre
especficamente para usarse con Java y por lo tanto
beneficiarse de las caractersticas de Java incluyendo
sobrecarga de mtodos, colecciones, etc

SEMANA 4: Java XML - Ing. Orlando Pihue Montoya

JDOM
Se asemeja al sistemaRMIoptimizado para Java
(invocacin remota de mtodos), y se amolda
mejor queCORBA(arquitectura de intermediario
solicitador de objetos comunes) que es ms
neutral respecto a los lenguajes.
JavaDocumentObjectModel (Documento de
Modelado de Objetos enJava),

SEMANA 4: Java XML - Ing. Orlando Pihue Montoya

JDOM
<tienda nombre="tienda para geeks" ubicacion="Tokio, Japon">
<computadora nombre="iBook" precio="$1200" />
<historieta nombre="Dragon Ball Volumen 1" precio="$9" />
<nivel_geek_de_la_tienda precio="sin precio" />
</tienda>
Es posible parsear el documento XML en un rbol de objetos Java con JDom:
SAXBuilder builder = new SAXBuilder ();
Document doc = builder.build (new FileInputStream ("foo.xml"));
Element root = doc.getRootElement ();
root.getName ();
// devuelve "tienda"
root.getAttributeValue ("nombre");
// devuelve "tienda para geeks"
root.getAttributeValue ("ubicacion");
// devuelve "Tokio, Japon"
root.getChildren ();
// devuelve una [[java.util.List]] de objetos que tiene tres
Element

SEMANA 4: Java XML - Ing. Orlando Pihue Montoya

JDOM
Tambin es posible realizar el proceso inverso, es decir
construir un rbol de elementos y luego crear un archivo XML:
Element root = new Element ("tienda");
root.setAttribute ("nombre", "tienda para geeks");
root.setAttribute ("ubicacin", "Tokio, Japon");
Element item1 = new Element ("computadora");
item1.setAttribute ("nombre", "iBook");
item1.setAttribute ("precio", "$1200");
root.addContent (item1); // Realizamos lo mismo con los elementos restantes
XMLOutputter outputter = new XMLOutputter ("",true);
try{
outputter.output (new Document(root),
new FileOutputStream ("foo2.xml"));
}
catch (Exception e){
e.getMessage(); }

SEMANA 4: Java XML - Ing. Orlando Pihue Montoya

SAX
SAXson las siglas de "Simple API for XML", originalmente, una
APInicamente para ellenguaje de programacin Java, que
despus se convirti en la API estndarde factopara usarXML
en JAVA.
Existen versiones de SAX no slo para JAVA, si no tambin para
otros lenguajes de programacin (comoPython).

SEMANA 4: Java XML - Ing. Orlando Pihue Montoya

Analizador o parser SAX


Detecta cundo empieza y termina un elemento o el
documento, o un conjunto de caracteres, etc. (genera
eventos)
Gestiona los espacios de nombres.
Comprueba que el documento est bien formado.
Las aplicaciones necesitan implementar manejadores de los
eventos notificados.
SAX lee secuencialmente de principio a fin, sin cargar todo
el documento en memoria.

SEMANA 4: Java XML - Ing. Orlando Pihue Montoya

Ventaja y desventajas
Eficiencia en cuanto al tiempo y la memoria empleados en el
anlisis.
No dispone de la estructura en rbol.
Es ms difcil de manipular.
Realiza una lectura secuencial del documento por lo que una
vez ledo no se puede volver atrs, algo queDOMs permite.

SEMANA 4: Java XML - Ing. Orlando Pihue Montoya

Wikipedia

SEMANA 4: Java XML - Ing. Orlando Pihue Montoya

Você também pode gostar