SlideServe
Menu
Préférences
© SlideServe · v2026

DOM

yorick avatar
11 diapositives · 360 Views · Sep 12, 2014

DOM. Document. DOM. XML Data. DOM — Schemat przetwarzania. Odczyt dokumentu i utworzenie drzewa obiektów w pamięci Przetwarzanie dokumentu (wyszukiwanie/dodawanie/usuwanie) Zapis wyniku. Przykładowy dokument XML. <root> <osoba imie=" Jan " nazwisko=" Kowalski ">

DOM - slide 1
01 / 11DOM
1 / 17

Télécharger la présentation

DOM
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation

  1. DOM Document DOM XML Data

  2. DOM — Schemat przetwarzania • Odczyt dokumentu i utworzenie drzewa obiektów w pamięci • Przetwarzanie dokumentu (wyszukiwanie/dodawanie/usuwanie) • Zapis wyniku

  3. Przykładowy dokument XML <root> <osoba imie="Jan" nazwisko="Kowalski"> Zatrudniony na stanowisku programisty </osoba> <osoba imie="Anna" nazwisko="Kowalska"> Zatrudniona na stanowisku asystenta </osoba> </root>

  4. DOM — Przykład Przykład pokazujący wczytywanie dokumenty do pamięci import javax.xml.parsers.*; import org.w3c.dom.*; publicclass DomDemoOdczytu { publicstaticvoid main(String argv[]) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse("c://przyklad.xml"); //teraz możemy wykonywać operację na obiekcie dokument } }

  5. Typy węzłów — nodeType() Stałe: ELEMENT_NODE, ATTRIBUTE_NODE, TEXT_NODE, . . .

  6. Reprezentacja w pamięci <root> <osoba imie="Jan" nazwisko="Kowalski"> Zatrudniony na stanowisku … </osoba> <osoba imie="Anna" nazwisko="Kowalska"> Zatrudniona na stanowisku … </osoba> </root> • Element - <root>, <osoba> • Attr – imie, nazwisko • Text – Zatrudniony…, Zatrudniona…

  7. Operacje odczytu danych • Document.getDocumentElement() – zwraca główny element dokumentu (zawsze musi być jeden taki element) • Node. getElementsByTagName(nazwa) – zwraca listę elementów, o określonej nazwie • Element.getAttribute(nazwa) – używane do wyciągnięcia danych z atrybutu • Node.getTextContent() – wyciąga dane tekstowe

  8. Przykład operacji odczytu <root> <osoba imie="Jan" nazwisko="Kowalski"> Zatrudniony na stanowisku … </osoba> <osoba imie="Anna" nazwisko="Kowalska"> Zatrudniona na stanowisku … </osoba> </root> Element root = document.getDocumentElement(); NodeList osoby = root.getElementsByTagName("osoba"); int liczbaOsob = osoby.getLength(); for(int i=0; i<liczbaOsob; i++) { Element osoba = (Element)osoby.item(i); Attr attrImie = osoba.getAttributeNode("imie"); String imie = attrImie.getValue(); //alternatywnysposóbodczytuatrybutu: String nazwisko = osoba.getAttribute("nazwisko"); String opis = osoba.getTextContent(); System.out.println(nazwisko+" "+imie+" "+opis); } //Wynikdziałaniakodu: //KowalskiJanZatrudnionynastanowisku... //KowalskaAnnaZatrudnionanastanowisku...

  9. Tworzenie XML w pamięci • Pusty dokument tworzymy instrukcją: doc=DocumentBuilder.newDocument(); • Element zawsze tworzymy z dokumentu Element elem = doc.createElement(„nazwa”); • Dodanie elementu do dokumentu lub innege elementu: parent. appendChild(elem); • Dodanie atrubutu elem.setAttribute(„nazwa”,”wartość”); • Dodanie tekstu do elementu elem.setTextContent(„dane tekstowe”);

  10. Przykład tworzenia dokumentu Document document = builder.newDocument(); Element root = document.createElement("root"); document.appendChild(root); Element osoba1 = document.createElement("osoba"); osoba1.setAttribute("imie", "Jan"); osoba1.setAttribute("nazwisko", "Kowalski"); osoba1.setTextContent("Zatrudniony na stanowisku..."); root.appendChild(osoba1); ... root.appendChild(osoba2); <root> <osoba imie="Jan" nazwisko="Kowalski"> Zatrudniony na stanowisku … </osoba> <osoba imie="Anna" nazwisko="Kowalska"> Zatrudniona na stanowisku … </osoba> </root>