Java:
XML के साथ काम करना

कैसे:

Java, DOM (Document Object Model), SAX (Simple API for XML), और StAX (Streaming API for XML) जैसे APIs प्रदान करता है ताकि XML के साथ काम किया जा सके। यहाँ एक DOM उदाहरण है जो XML फाइल का विश्लेषण करता है:

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;

public class XmlParser {
    public static void main(String[] args) {
        try {
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            DocumentBuilder builder = factory.newDocumentBuilder();
            Document doc = builder.parse("data.xml");
            
            doc.getDocumentElement().normalize();
            NodeList nodeList = doc.getElementsByTagName("employee");
            
            for (int i = 0; i < nodeList.getLength(); i++) {
                Element element = (Element) nodeList.item(i);
                System.out.println("Name: " + element.getElementsByTagName("name").item(0).getTextContent());
                System.out.println("Age: " + element.getElementsByTagName("age").item(0).getTextContent());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

मान लें data.xml ऐसा दिखता है:

<employees>
    <employee>
        <name>Jane Doe</name>
        <age>30</age>
    </employee>
    <employee>
        <name>John Doe</name>
        <age>40</age>
    </employee>
</employees>

आउटपुट होगा:

Name: Jane Doe
Age: 30
Name: John Doe
Age: 40

गहराई में:

XML 90 के दशक के अंत से मौजूद है, जो विभिन्न सिस्टमों में डेटा के आदान-प्रदान के लिए एक संरचित और लचीला तरीका प्रदान करता है। हालांकि JSON ने इसकी सरल सिंटैक्स और JavaScript के साथ तंग एकीकरण के कारण नई वेब APIs के लिए अधिक लोकप्रियता प्राप्त कर ली है, XML उद्यम वातावरणों, SOAP-आधारित वेब सेवाओं और Microsoft Office के लिए Office Open XML जैसे दस्तावेज़ मानकों में व्यापक रूप से उपयोग किया जाता है।

Java में XML का विश्लेषण करते समय, DOM API छोटे दस्तावेज़ों के लिए शानदार है: यह ट्री-आधारित है और मेमोरी में XML संरचना तक पूरी पहुँच प्रदान करता है। हालांकि, बड़ी फ़ाइलों के लिए, यह स्मृति-गहन हो सकता है। SAX और StAX अधिक स्मृति-मित्रतापूर्ण हैं, क्योंकि वे क्रमशः इवेंट-चालित और स्ट्रीम-आधारित हैं, लेकिन XML संरचनाओं के नेविगेट करने के लिए वे कम सुविधाजनक हो सकते हैं।

XML बनाने या संशोधित करने के लिए, Java javax.xml.transform और javax.xml.bind (JAXB) पैकेज भी प्रदान करता है। JAXB जावा SE के संस्करण 10 तक Java SE का हिस्सा था, उसके बाद, जावा SE से जावा EE मॉड्यूल्स को हटाने के कारण यह एक अलग पुस्तकालय बन गया। यह XML से जावा ऑब्जेक्ट्स को सीरियलाइज़ करने और इसके विपरीत के लिए एक एनोटेशन-चालित तरीका है।

देखें भी

Java में XML के साथ काम करने पर और जानकारी के लिए इन संबंधित स्रोतों को देखें: