Cả hai dường như đều có cùng một mục đích (tạo một XMLReader). Một số hướng dẫn có chứa một, một số khác.Sự khác biệt SAXParserFactory XMLReaderFactory. Bạn chọn cái nào?
SAXParserFactory:
- http://docs.oracle.com/javase/7/docs/api/javax/xml/parsers/SAXParserFactory.html
- dường như được cấu hình hơn
- hơn nồi hơi-tấm đang
- hỗ trợ chính thức api
mã ví dụ:
// SAXParserFactory
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
XMLReader reader = parser.getXMLReader();
reader.parse(new InputSource("document.xml"));
XMLReaderFactory:
- http://docs.oracle.com/javase/7/docs/api/org/xml/sax/helpers/XMLReaderFactory.html
- hai dòng mã ít hơn
- ít cấu hình
- Comunity hỗ trợ và đi kèm với không có Bảo hành
mã ví dụ:
// XMLReaderFactory
XMLReader xmlReader = XMLReaderFactory.createXMLReader();
xmlReader.parse(new InputSource("document.xml"));
câu hỏi:
Là những khác biệt chính hoặc đang có một số tôi đã giám sát.
Bạn nên chọn loại nào?
SAXParserFactory là JAXP, trong khi XMLReaderFactory là "SAX API" chính thức. Tôi nhớ cuốn sách SAX2 cũ từ O'Reilly đề xuất API chính thức, do cách thức mà nó xử lý các không gian tên. Tôi không biết liệu điều này có liên quan nữa không. Nhưng, tôi đoán tôi sẽ sử dụng XMLReaderFactory trừ khi tôi cần JAXP vì lý do nào đó. Có thể ai đó khác có thể cung cấp thêm một số đầu vào hiện tại. –