XML-Parsing-Tool: JAXB: Java-Klassen generieren, XML- und Objektkonvertierung automatisieren. DOM: API für den Zugriff auf und die Bearbeitung von XML, die eine granulare Kontrolle bietet. SAX: Ereignisgesteuerter Parser, hohe Leistung, aber schwer zu kontrollieren. StAX: Ein Stream-basierter Parser, der das Beste von SAX und DOM kombiniert.
XML-Parsing-Tools in der Java-Bibliothek
Java bietet eine Vielzahl von Toolkits für die XML-Analyse zum Lesen, Schreiben und Ändern von XML-Dokumenten. Die folgenden werden am häufigsten verwendet:
1. JAXB (Java Schema Binding XML)
Codebeispiel:
// 生成 Java 类 JAXBContext context = JAXBContext.newInstance(Customer.class); SchemaOutputResolver outputResolver = new SchemaOutputResolver() { @Override public Result createOutput(String namespaceUri, String suggestedFileName) { return new StreamResult(new File("customer.xsd")); } }; context.generateSchema(outputResolver); // 绑定 XML 文档到 Java 对象 Unmarshaller unmarshaller = context.createUnmarshaller(); Customer customer = (Customer) unmarshaller.unmarshal(new File("customer.xml"));
2. DOM (Document Object Model)
Codebeispiel:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(new File("document.xml")); NodeList nodes = document.getElementsByTagName("name");
3. SAX (Simple API for XML)
Codebeispiel:
XMLReader reader = XMLReaderFactory.createXMLReader(); reader.setContentHandler(new MyContentHandler()); reader.parse(new InputSource(new File("document.xml"))); class MyContentHandler implements ContentHandler { @Override public void startElement(String uri, String localName, String qName, Attributes atts) { /* ... */ } @Override public void characters(char[] ch, int start, int length) { /* ... */ } // ...其他方法 }
4. StAX (Stream API für XML)
Codebeispiel:
XMLInputFactory factory = XMLInputFactory.newInstance(); XMLStreamReader reader = factory.createXMLStreamReader(new File("document.xml")); while (reader.hasNext()) { switch (reader.getEventType()) { case XMLStreamConstants.START_ELEMENT: System.out.println(reader.getLocalName()); break; case XMLStreamConstants.CHARACTERS: System.out.println(reader.getText()); break; // ...其他事件 } reader.next(); }
Wählen Sie das passende Parsing-Tool basierend auf Ihren spezifischen Anforderungen. Für automatisierte Transformationen und Datenbindung ist JAXB eine gute Wahl. Für eine feinere Dokumentenkontrolle ist DOM möglicherweise besser geeignet. SAX und StAX bieten eine bessere Leistung, erfordern jedoch fortgeschrittenere Programmierkenntnisse.
Das obige ist der detaillierte Inhalt vonWelche sind die am häufigsten verwendeten XML-Parsing-Tools in Java-Funktionsbibliotheken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!