Spec-Zone.ru › OpenJDK 25

Класс SAXParser

java.lang.Object
javax.xml.parsers.SAXParser
public abstract class SAXParser extends Object
Определяет API, предоставляющий оболочку для класса реализации XMLReader. В JAXP 1.0 этот класс предоставлял оболочку для интерфейса Parser, однако этот интерфейс был заменён на XMLReader. Для упрощения перехода этот класс продолжает поддерживать прежнее имя и интерфейс, а также новые методы. Экземпляр этого класса можно получить с помощью метода SAXParserFactory.newSAXParser(). После получения экземпляра этого класса XML можно анализировать из различных источников ввода. К таким источникам относятся потоки ввода, файлы, URL-адреса и источники ввода SAX.

Этот статический метод создаёт новый экземпляр фабрики на основе значения системного свойства или использует платформенное значение по умолчанию, если свойство не задано.

Системное свойство, управляющее выбором реализации фабрики, называется "javax.xml.parsers.SAXParserFactory". Это свойство задаёт имя класса, являющегося конкретным подклассом данного абстрактного класса. Если свойство не задано, будет использоваться платформенная реализация по умолчанию.

При анализе содержимого базовым анализатором вызываются методы заданного HandlerBase или DefaultHandler.

Разработчики подклассов этого класса, предоставляющих оболочку для базовой реализации, могут использовать класс ParserAdapter для первоначальной адаптации своей реализации SAX1 к работе с этим обновлённым классом.

Начиная с:
1.4

Краткое описание конструкторов

SAXParser()
Модификатор Конструктор Описание
protected
Защищённый конструктор для предотвращения создания экземпляров.

Краткое описание методов

Модификатор и тип Метод Описание
abstract Parser getParser()
Возвращает анализатор SAX, инкапсулированный реализацией этого класса.
abstract Object getProperty(String name)
Возвращает запрошенное свойство базовой реализации XMLReader.
Schema getSchema()
Получает ссылку на Schema, используемую обработчиком XML.
abstract XMLReader getXMLReader()
Возвращает XMLReader, инкапсулированный реализацией этого класса.
abstract boolean isNamespaceAware()
Указывает, настроен ли этот анализатор на обработку пространств имён.
abstract boolean isValidating()
Указывает, настроен ли этот анализатор на проверку XML-документов.
boolean isXIncludeAware()
Получает режим обработки XInclude для этого анализатора.
void parse(File f, HandlerBase hb)
Анализирует содержимое указанного файла как XML с помощью заданного HandlerBase.
void parse(File f, DefaultHandler dh)
Анализирует содержимое указанного файла как XML с помощью заданного DefaultHandler.
void parse(InputStream is, HandlerBase hb)
Анализирует содержимое указанного экземпляра InputStream как XML с помощью заданного HandlerBase.
void parse(InputStream is, HandlerBase hb, String systemId)
Анализирует содержимое указанного экземпляра InputStream как XML с помощью заданного HandlerBase.
void parse(InputStream is, DefaultHandler dh)
Анализирует содержимое указанного экземпляра InputStream как XML с помощью заданного DefaultHandler.
void parse(InputStream is, DefaultHandler dh, String systemId)
Анализирует содержимое указанного экземпляра InputStream как XML с помощью заданного DefaultHandler.
void parse(String uri, HandlerBase hb)
Анализирует содержимое, указанное универсальным идентификатором ресурса (URI), как XML с помощью заданного HandlerBase.
void parse(String uri, DefaultHandler dh)
Анализирует содержимое, указанное универсальным идентификатором ресурса (URI), как XML с помощью заданного DefaultHandler.
void parse(InputSource is, HandlerBase hb)
Анализирует содержимое заданного InputSource как XML с помощью заданного HandlerBase.
void parse(InputSource is, DefaultHandler dh)
Анализирует содержимое заданного InputSource как XML с помощью заданного DefaultHandler.
void reset()
Восстанавливает исходную конфигурацию этого SAXParser.
abstract void setProperty(String name, Object value)
Задаёт указанное свойство в базовой реализации XMLReader.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

SAXParser

protected SAXParser()

Защищённый конструктор для предотвращения создания экземпляров. Используйте SAXParserFactory.newSAXParser().

Подробное описание методов

reset

public void reset()

Восстанавливает исходную конфигурацию этого SAXParser.

SAXParser возвращается в то же состояние, что и при создании с помощью SAXParserFactory.newSAXParser(). Метод reset() предназначен для повторного использования существующих SAXParser, что позволяет экономить ресурсы, связанные с созданием новых SAXParser.

Не гарантируется, что после сброса SAXParser будет иметь тот же Object Schema, например, Object.equals(Object obj). Гарантируется, что он будет функционально эквивалентен Schema.

Исключения:
UnsupportedOperationException — если реализации не переопределяют этот метод
Начиная с:
1.5

parse

public void parse(InputStream is, HandlerBase hb) throws SAXException, IOException

Анализирует содержимое указанного экземпляра InputStream как XML с помощью заданного HandlerBase. Рекомендуется использовать версию этого метода с DefaultHandler, поскольку класс HandlerBase устарел начиная с SAX 2.0.

Параметры:
is — InputStream, содержащий анализируемое содержимое.
hb — используемый обработчик SAX HandlerBase.
Исключения:
IllegalArgumentException — если указанный InputStream равен null.
SAXException — если при анализе возникает ошибка SAX.
IOException — если при работе с InputStream возникает ошибка ввода-вывода.
См. также:
  • DocumentHandler

parse

public void parse(InputStream is, HandlerBase hb, String systemId) throws SAXException, IOException

Анализирует содержимое указанного экземпляра InputStream как XML с помощью заданного HandlerBase. Рекомендуется использовать версию этого метода с DefaultHandler, поскольку класс HandlerBase устарел начиная с SAX 2.0.

Параметры:
is — InputStream, содержащий анализируемое содержимое.
hb — используемый обработчик SAX HandlerBase.
systemId — systemId, необходимый для разрешения относительных URI.
Исключения:
IllegalArgumentException — если заданный InputStream равен null.
IOException — если при работе с InputStream возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • вместо этого используйте версию данного метода.

parse

public void parse(InputStream is, DefaultHandler dh) throws SAXException, IOException
Анализирует содержимое указанного экземпляра InputStream как XML с помощью заданного DefaultHandler.
Параметры:
is — InputStream, содержащий анализируемое содержимое.
dh — используемый обработчик SAX DefaultHandler.
Исключения:
IllegalArgumentException — если указанный InputStream равен null.
IOException — если возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • DocumentHandler

parse

public void parse(InputStream is, DefaultHandler dh, String systemId) throws SAXException, IOException
Анализирует содержимое указанного экземпляра InputStream как XML с помощью заданного DefaultHandler.
Параметры:
is — InputStream, содержащий анализируемое содержимое.
dh — используемый обработчик SAX DefaultHandler.
systemId — systemId, необходимый для разрешения относительных URI.
Исключения:
IllegalArgumentException — если указанный InputStream равен null.
IOException — если возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • вместо этого используйте версию данного метода.

parse

public void parse(String uri, HandlerBase hb) throws SAXException, IOException
Анализирует содержимое, указанное данным универсальным идентификатором ресурса (URI), как XML с помощью заданного HandlerBase. Рекомендуется использовать версию этого метода с DefaultHandler, поскольку класс HandlerBase устарел начиная с SAX 2.0
Параметры:
uri — расположение анализируемого содержимого.
hb — используемый обработчик SAX HandlerBase.
Исключения:
IllegalArgumentException — если uri равен null.
IOException — если возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • DocumentHandler

parse

public void parse(String uri, DefaultHandler dh) throws SAXException, IOException
Анализирует содержимое, указанное данным универсальным идентификатором ресурса (URI), как XML с помощью заданного DefaultHandler.
Параметры:
uri — расположение анализируемого содержимого.
dh — используемый обработчик SAX DefaultHandler.
Исключения:
IllegalArgumentException — если uri равен null.
IOException — если возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • DocumentHandler

parse

public void parse(File f, HandlerBase hb) throws SAXException, IOException
Анализирует содержимое указанного файла как XML с помощью заданного HandlerBase. Рекомендуется использовать версию этого метода с DefaultHandler, поскольку класс HandlerBase устарел начиная с SAX 2.0
Параметры:
f — файл, содержащий анализируемый XML.
hb — используемый обработчик SAX HandlerBase.
Исключения:
IllegalArgumentException — если объект File равен null.
IOException — если возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • DocumentHandler

parse

public void parse(File f, DefaultHandler dh) throws SAXException, IOException
Анализирует содержимое указанного файла как XML с помощью заданного DefaultHandler.
Параметры:
f — файл, содержащий анализируемый XML.
dh — используемый обработчик SAX DefaultHandler.
Исключения:
IllegalArgumentException — если объект File равен null.
IOException — если возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • DocumentHandler

parse

public void parse(InputSource is, HandlerBase hb) throws SAXException, IOException
Анализирует содержимое заданного InputSource как XML с помощью заданного HandlerBase. Рекомендуется использовать версию этого метода с DefaultHandler, поскольку класс HandlerBase устарел начиная с SAX 2.0
Параметры:
is — InputSource, содержащий анализируемое содержимое.
hb — используемый обработчик SAX HandlerBase.
Исключения:
IllegalArgumentException — если объект InputSource равен null.
IOException — если возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • DocumentHandler

parse

public void parse(InputSource is, DefaultHandler dh) throws SAXException, IOException
Анализирует содержимое заданного InputSource как XML с помощью заданного DefaultHandler.
Параметры:
is — InputSource, содержащий анализируемое содержимое.
dh — используемый обработчик SAX DefaultHandler.
Исключения:
IllegalArgumentException — если объект InputSource равен null.
IOException — если возникает ошибка ввода-вывода.
SAXException — если во время обработки возникают ошибки SAX.
См. также:
  • DocumentHandler

getParser

public abstract Parser getParser() throws SAXException
Возвращает анализатор SAX, инкапсулированный реализацией этого класса.
Возвращает:
Анализатор SAX, инкапсулированный реализацией этого класса.
Исключения:
SAXException — если во время обработки возникают ошибки SAX.

getXMLReader

public abstract XMLReader getXMLReader() throws SAXException
Возвращает XMLReader, инкапсулированный реализацией этого класса.
Возвращает:
XMLReader, инкапсулированный реализацией этого класса.
Исключения:
SAXException — если во время обработки возникают ошибки SAX.

isNamespaceAware

public abstract boolean isNamespaceAware()
Указывает, настроен ли этот анализатор на обработку пространств имён.
Возвращает:
true, если анализатор настроен на обработку пространств имён; в противном случае false.

isValidating

public abstract boolean isValidating()
Указывает, настроен ли этот анализатор на проверку XML-документов.
Возвращает:
true, если анализатор настроен на проверку XML-документов; в противном случае false.

setProperty

public abstract void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException

Задаёт указанное свойство в базовой реализации XMLReader. Список основных функций и свойств можно найти по адресу http://sax.sourceforge.net/?selected=get-set.

Все реализации, поддерживающие JAXP 1.5 или более позднюю версию, обязаны поддерживать свойства XMLConstants.ACCESS_EXTERNAL_DTD и XMLConstants.ACCESS_EXTERNAL_SCHEMA.

  • Задание свойства XMLConstants.ACCESS_EXTERNAL_DTD ограничивает доступ к внешним DTD и внешним ссылкам на сущности протоколами, указанными в свойстве. Если доступ запрещён при анализе из-за ограничения, заданного этим свойством, методы анализа, определённые в SAXParser, выбрасывают SAXException.

    Задание свойства XMLConstants.ACCESS_EXTERNAL_SCHEMA ограничивает доступ к внешним схемам, указанным атрибутом schemaLocation, протоколами, заданными в свойстве. Если доступ запрещён при анализе из-за ограничения, заданного этим свойством, методы анализа, определённые в SAXParser, выбрасывают SAXException.

Параметры:
name — имя задаваемого свойства.
value — значение задаваемого свойства.
Исключения:
SAXNotRecognizedException — если базовый XMLReader не распознаёт имя свойства.
SAXNotSupportedException — если базовый XMLReader распознаёт имя свойства, но не поддерживает это свойство.
См. также:
  • XMLReader.setProperty(String, Object)

getProperty

public abstract Object getProperty(String name) throws SAXNotRecognizedException, SAXNotSupportedException

Возвращает запрошенное свойство базовой реализации XMLReader.

Параметры:
name — имя получаемого свойства.
Возвращает:
Значение запрошенного свойства.
Исключения:
SAXNotRecognizedException — если базовый XMLReader не распознаёт имя свойства.
SAXNotSupportedException — если базовый XMLReader распознаёт имя свойства, но не поддерживает это свойство.
См. также:
  • XMLReader.getProperty(String)

getSchema

public Schema getSchema()

Получает ссылку на Schema, используемую обработчиком XML.

Если схема не используется, возвращается null.

Возвращает:
Schema, используемая схема, или null, если схема не используется
Исключения:
UnsupportedOperationException — если реализация не переопределяет этот метод
Начиная с:
1.5

isXIncludeAware

public boolean isXIncludeAware()

Получает режим обработки XInclude для этого анализатора.

Возвращает:
значение, возвращаемое методом SAXParserFactory.isXIncludeAware(), когда этот анализатор был создан фабрикой.
Исключения:
UnsupportedOperationException — если реализация не переопределяет этот метод
Начиная с:
1.5
См. также:
  • SAXParserFactory.setXIncludeAware(boolean)

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, где приведены более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.xml/javax/xml/parsers/SAXParser.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API