Categorie
Winzipedia Uso dell'wiki |
Java /
SAX-DOMJava.SAX-DOM VersioniMostra le modifiche minori - Mostra le modifiche 16/06/2006 ore 16:05 CEST
di - Aggiunta di DOM
Modificate le linee 25-26: da:
!! a:
!!Uso di SAX Modificate le linee 48-94: da:
a:
Il SAXParser ci da tutte le informazioni rilevate dalla lettura del documento XML. !! Uso di DOM Dato un documento XML viene creata la struttura ad albero ''<i> project </i>'' : CDATA introduce del testo che il parser non deve elaborare ma deve essere solamente riportato senza effettuare modifiche. Quindi in questo caso dell'esempio vengono riportati anche i tag, che vengono mostrati su schermo. '''Caricamento di un DOM:''' librerie: import org.w3c.dom.* import java.xml.parsers.* import org.xml.sax.* ''DocumentBuilderFactory factory = DocumentBuilderFactory.newIstance();'' ''DocumentBuilder builder = factory.newDocumentBuilder();'' '''Navigazione:''' - Estrazione del nodo radice e stampa del nome del nodo: ''getNodeName()'' - Nodi figli: ''getChildNodes()'' - Attributi: ''getAttributes()'' '''Tipizzazione:''' - ''n.getNodeType() == Node.ELEMENT_NODE'' // tipo del nodo, verifica se n rappresenta un elemento e non un commento o un testo - Reflection: ''n.istanceof Element()'' - Polimorfismo: le librerie ritornano un'istanza della sottoclasse corretta! '''Validazione:''' ''factory.setValidating(true);'' // per renderlo valido '''Browsing e stampa:''' - ''getAttributes()'' // restituisce gli attributi della mappa creata - ''getNodeValue()'' // nel caso in cui sia un attributo ''Element root = doc.getDocumentElement();'' Dentro la stringa si accumulano i vari nomi dei testi che poi vengono visualizzati a schermo. '''Modifica dell'albero:''' 16/06/2006 ore 16:03 CEST
di - Creazione della pagina
Aggiunte le linee 1-48:
!Uso di SAX in Java '''Autori:''' [[Profiles.AlbertoConsonni | Alberto Consonni]] ->'''Sommario''' !!Introduzione * ''Approccio ad eventi'': informa l'applicazione degli eventi, tramite degli interrupt !!!JAXP (Java API for XML Processing) * SAX (Simple API for XML) per l'approccio ad eventi * DOM (Document Object Model) per l'approccio del modello Bisogna implementare l'interfaccia @@org.xml.sax.helpers.ContentHandler@@. // creazione parser SAXParserFactory spf = SAXParserFactory.newIstance(); SAXParser saxParser = spf.newSAXParser(); XMLReader parser = saxParser.getXMLReader(); // creazione handler ContentHandler handler = new MyHandler(); parser.setContentHandler(handler); Il SAXParser ci da tutte le informazioni rilevate dalla lettura del documento XML. |