XML adatkezelés. A DOM alapú adatkezelés. Dr. Kovács László Répási Tibor kiegészítéseivel

Hasonló dokumentumok
34. Elsődleges kulcs megadása XMLSchema-ban Idegen kulcs megadása XMLSchema-ban Típusok kategóriái és saját típus megadásának

XML adatkezelés I. Az SAX szabvány. Dr. Kovács László Miskolci Egyetem Általános Informatikai Tanszék. XML adatok kezelési lehetőségei

XML dokumentumok feldolgozása. DOM, SAX, StAX

XML dokumentumok feldolgozása Java-ban XML, DTD, XSD, XSLT, JAXP, DOM, SAX, JDOM

DINAMIKUS MULTIMÉDIÁS TARTALOM...

Eddig még nem használt vezérlőket is megismerünk: PlaceHolder, RadioButtonList.

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben?

Az XML dokumentumok adatmodellje

Adatkezelési mőveletek az XML nyelvben XQuery - XML dokumentumok lekérdezésére szolgáló lekérdezınyelv kifejezı ereje az OQL nyelvével egyenértékő.

Adatbázisok II. Jánosi-Rancz Katalin Tünde 327A

XML technikák II Kovács, László

Java Programozás 10. Ea: Extrák

Objektumorientált programozás

SQLServer. DB Recovery modes

Zenetár a webszerverünkön,

XML és XSLT (a színfalak mögül)

XML (DTD) (XSD) DOM SAX XSL. XML feldolgozás

Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22

XML adatkezelés. 11. témakör. Az XQuery nyelv alapjai. XQuery. XQuery célja egy imperatív lekérdező nyelv biztosítása. XQuery.

A Java nyelv. Dialógus ablakok. Elek Tibor

XML alapú adatbázis-kezelés. (Katona Endre diái alapján)

JNDI - alapok. Java Naming and Directory Interface

A JavaScript főbb tulajdonságai

Java Programozás 11. Ea: MVC modell

12.óra jquery Framework #1. Gyimesi Ákos

Kivételkezelés, naplózás. Exception handling, logging

XML adatkezelés. 5. témakör. Nincs explicit névtér kijelölve. <?xml version="1.0"?> <xs:schema xmlns:xs="

JAVA webes alkalmazások

C# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18

Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor

Kompozit alkalmazások fejlesztése. IBM WebSphere Portal Server

Java Server Pages - JSP. Web Technológiák. Java Server Pages - JSP. JSP lapok életciklusa

AutoCAD MAP DWG mapobject TOPOBASE konvertáló program dokumentáció

A Java EE 5 plattform

Enterprise JavaBeans. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem. Az Enterprise JavaBeans

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

XML EXtensible Markup Language

Bevezetés Működési elv AJAX keretrendszerek AJAX

30 MB INFORMATIKAI PROJEKTELLENŐR

HTML. Ismerkedés a JavaScripttel. A JavaScript lehet ségei. A JavaScript kód helye. Önálló JavaScript fájlok

Enterprise JavaBeans 1.4 platform (EJB 2.0)

Az XML-DTD áttekintése

Java XML kezelés labor

Dokumentumformátumok Jelölő nyelvek XML XML. Sass Bálint Bevezetés a nyelvtechnológiába 2. gyakorlat szeptember 20.

Entity Framework alapú adatbáziselérés

Adatbázisok II. Jánosi-Rancz Katalin Tünde 327A

Speciális ügyfélkapcsolati igények Önkiszolgáló ügyfelektől az előfizető nyilvántartásig

Bánsághi Anna

UML (Unified Modelling Language)

Grafikus keretrendszer komponensalapú webalkalmazások fejlesztéséhez

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Általános lekérdezési feladatok

Entity Framework alapú adatbáziselérés

EGYÜTTMŰKÖDŐ ÉS VERSENGŐ ERŐFORRÁSOK SZERVEZÉSÉT TÁMOGATÓ ÁGENS RENDSZER KIDOLGOZÁSA

Táblázatok fontosabb műveletei 1

Java és web programozás

Globalizáció, Lokalizáció

Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció

JAVA PROGRAMOZÁS 3.ELŐADÁS

Szoftvertechnológia alapjai Java előadások

Java Programozás 6. Gy: Java alapok. Adatkezelő 2.rész

Országgyűlés Hivatala Exadata a törvényhozásban

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK

Egészségügyi intézmények együttműködésének informatikai vonatkozásai. Fehér András

Programozás III BEVEZETÉS. Sok adatkezeléssel kapcsolatos feladat van. a/ Adatok fájlban. b/ Adatbázisban

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk.

XPath. dr. Paller Gábor. XML technológiák

C#, OOP. Osztályok tervezése C#-ban

Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni?

Intelligens elektronikus szótár és lexikai adatbázis

JavaScript bűvésztrükkök, avagy PDF olvasó és böngésző hackelés

Ajax és Echo 2. Bokor Attila

DTD Dokumentumtípus definició

Segédanyag: Java alkalmazások gyakorlat

JavaServer Pages (JSP) (folytatás)

Programozás II gyakorlat. 7. Példák a polimorfizmus alkalmazásaira

Programozási nyelvek Java

Smalltalk 3. Osztályok létrehozása. Készítette: Szabó Éva

JAVA SE/ME tanfolyam tematika

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás

PowerShell v2.0 alapok. Nagy Miklós

MTMT2. Konzultáció 2017 március 16

Web Technológiák. Répási Tibor egyetemi tanársegéd. Miskolc Egyetem,Gépészmérnöki kar, Infomatikai és Villamosmérnöki Tanszékcsoport (IVM)

Fogalomtérkép. IHMC CmapTools version Felhasználása. Elérhetőség. Rendszerkövetelmény (Windows OS esetén):

Segédanyag: Java alkalmazások gyakorlat

Tipp A Word makrók kimerítõ tárgyalását megtalálhatjuk az O Reilly gondozásában megjelent Writing Word Macros címû könyvben.

MDAC - Microsoft Data Access Components

Webes űrlapok és az XForms ajánlás

Vé V g é r g e r h e a h j a tá t s á i s s z s ál á ak a Runnable, Thread

Oracle Containers for Java - j2ee alkalmazás szerver funkciók. Molnár Balázs Oracle Hungary

Szerver oldali Java programozás /II. 1. óra. Elemkönyvtárak. Elemkönyvtárak használata Saját elemkönyvtár készítése.

Internet programozása. 1. előadás

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS. Objektumorientált programozás

Entity Framework + LINQ oktatási segédlet

Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Java programozási nyelv 4. rész Osztályok II.

Java Programozás 8. Gy: Java alapok. Adatkezelő 4.rész

Átírás:

XML adatkezelés A DOM alapú adatkezelés Dr. Kovács László Répási Tibor kiegészítéseivel

DOM Az XML jellegű dokumentumok feldolgozó felülete DOM = Document Object Model Az értelmező előállít egy olyan objektumot, amely az XML dokumentumot tartalmazza. A kezelő ezen objektum tulajdonságain, metódusain keresztül tud dokumentumkezelést végezni XML SAX dokumentum objektum modell Kezelő program DOM feldolgozó K.L.

DOM Fontosabb lépések: - dokumentum olvasó létrehozása - objektum (fa) létrehozása - dokumentum tagelemek elérése - dokumentum metódusok meghívása - dokumentum szerializálása A DOM a dokumentum fa modelljét építi fel a memóriában A dokumentum elemeit objektumok reprezentálják. Az elemek egymásbaágyazásának viszonyait az objektumok közti szülő-gyermek viszony reprezentálja.

DOM A DOM osztály-kapcsolat modellje Document Documentfragment Node Element Attribute Entity CharacterData PI Text Comment

DOM osztályai <?xml version="1.0"?> <!-- mintapélda --> <konyvek xmlns="www.lib.org/books"> <konyv id="1001"> <cim> Tornado a godorben </cim> <ibook:isbn xmlns:ibook="www.book.org/codes"> 1156511-568-89 </ibook:isbn> <ar pnem="ft"> 2455 </ar> <benn/> <kiado idref="k354" /> <szerzo> Kiss Péter </szerzo> <szerzo> Kovacs Lajos </szerzo> </konyv> </konyvek>

DOM kezelő osztályai Navigációs logikán alapszik parent child sibling A fa bővithető, elemei törölhetők

DOM Dokumentum olvasó létrehozása Document DocumentBuilder DocumentBuilderFactory DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance() dbf.setvalidating(true); DocumentBuilder db = dbf.newdocumentbuilder(); Document dom = db.parse (new File(args)); kezelo(dom);

DOM A dokumentum osztály legfontosabb elemei createelement(string) createattribute(string) createcomment(string) createtextnode(string) createentityreference(string) getdocumenturi() getdocumentelement() getelementsbytagname() insertbefore (Node, Node) getxmlversion() normalize()

DOM A Node osztály legfontosabb elemei appendchild(node) clonenode() getattributes() getchildnodes() getfirstchild() getlocalname() getnamespaceiuri() getnextsibling() getnodetype() getnodevalue() getparentnode() getprefix() getprevioussibling() gettextcontent() haschildnodes() hasattributes() removechild() replacechild() settextcontent() setprefix() TEXT_NODE ATTRIBUTE_NODE

Dokumentum nyitása import javax.xml.parsers.documentbuilder; import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.parserconfigurationexception; import org.w3c.dom.*; import org.xml.sax.saxexception; main() { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); try { DocumentBuilder db = dbf.newdocumentbuilder(); Document dom = db.parse(new File(args)); query1(dom); }catch(parserconfigurationexception pce) { } catch(saxexception se) { } catch(ioexception ioe) { }

Dokumentum gyökérelem elérése: Document dok; Node root = dok.getdocumentelement(); Gyerekelemek bejárása Node elem, gyerek; for (p=0; p<elem.getchildnodes().getlength(); p++) { gyerek = elem.getchildnodes().item(p); } Elem nevének és tipusának lekérdezése: Node elem; if (elem.getnodetype()==node.element_node) { if (elem.getnodename().compareto("ar") == 0) {

Elemjellemzők bejárása Node elem; for (p=0; p<elem.getattributes().getlength();p++) { Node elemuj = elem.getattributes().item(p); } Szövegérték növelése Node elem; ear = Integer.parseInt(elem.getTextContent()); String ujszov = String.valueOf(ear+nov); elem.setnodevalue(ujszov);

Új elem felvitele Document dok; Node ujelem, elem; Node ujelem = dok.createelement("konyv"); elem.appendchild(ujelem); ujelem.settextcontent("babits"); Elem törlése Node elem, gyerek; for (p=0; p<elem.getchildnodes().getlength(); p++) { gyerek = elem.getchildnodes().item(p); elem.removechild(gyerek); }