Rumah >Java >javaTutorial >Apakah alat penghuraian XML yang biasa digunakan dalam perpustakaan fungsi Java?
Alat penghuraian XML: JAXB: Menjana kelas Java, mengautomasikan XML dan penukaran objek. DOM: API untuk mengakses dan memanipulasi XML, menyediakan kawalan berbutir. SAX: penghurai dipacu peristiwa, prestasi tinggi tetapi sukar dikawal. StAX: Penghurai berasaskan aliran yang menggabungkan SAX dan DOM yang terbaik.
Alat penghuraian XML dalam perpustakaan Java
Java menyediakan pelbagai kit alat untuk penghuraian XML untuk membaca, menulis dan mengubah suai dokumen XML. Berikut adalah yang paling biasa digunakan:
1. JAXB (Java Schema Binding XML)
Contoh kod:
// 生成 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 (Model Objek Dokumen)
Contoh kod:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(new File("document.xml")); NodeList nodes = document.getElementsByTagName("name");
3. SAX (API Mudah untuk XML)
Sampel kod:
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 (API Aliran untuk XML)
Contoh Kod:
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(); }
Pilih alat penghuraian yang sesuai berdasarkan keperluan khusus anda. Untuk transformasi automatik dan pengikatan data, JAXB ialah pilihan yang baik. Untuk kawalan dokumen yang lebih halus, DOM mungkin lebih sesuai. SAX dan StAX memberikan prestasi yang lebih baik tetapi memerlukan kemahiran pengaturcaraan yang lebih maju.
Atas ialah kandungan terperinci Apakah alat penghuraian XML yang biasa digunakan dalam perpustakaan fungsi Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!