Код: Выделить всё
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Было бы хорошей идеей создать одноэлементную оболочку вокруг фабрики DocumentBuilder и экземпляров DocumentBuilder, как показано ниже:
Код: Выделить всё
public final class DOMParser {
private DocumentBuilderFactory = new DocumentBuilderFactory();
private DocumentBuilder builder;
private static DOMParser instance = new DOMParser();
private DOMParser() {
builder = factory.newDocumentBuilder();
}
public Document parse(InputSource xml) {
return builder.parser(xml);
}
}
Изменить:
Единственный раз, когда мы можем столкнуться с проблемой, это если DocumentBuilder сохраняет некоторую информацию о состоянии при анализе XML-файла, что может повлиять на синтаксический анализ следующего XML-файла.
Подробнее здесь: https://stackoverflow.com/questions/124 ... hread-safe
Мобильная версия