Spec-Zone.ru › OpenJDK 24

Класс SAXParser

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

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

Свойство системы, которое управляет тем, какая реализация Factory будет создана, называется "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.

Методы, объявленные в классе java.lang.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 не гарантирует такое же Schema состояние Object, например, Object.equals(Object obj). Гарантируется функционально эквивалентное состояние Schema.

Throws:
UnsupportedOperationException - Когда реализации не переопределяют этот метод
Since:
1.5

parse

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

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

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

parse

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

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

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

parse

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

parse

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

parse

public void parse(String uri, HandlerBase hb) throws SAXException, IOException
Обработать содержимое, описываемое заданным унифицированным идентификатором ресурса (URI), как XML с использованием указанного HandlerBase. Рекомендуется использовать версию DefaultHandler этого метода, так как класс HandlerBase устарел в SAX 2.0
Parameters:
uri - Расположение данных для обработки.
hb - Обработчик SAX HandlerBase для использования.
Throws:
IllegalArgumentException - Если uri равен null.
IOException - Если возникают ошибки ввода-вывода.
SAXException - Если при обработке возникли ошибки SAX.
See Also:
  • DocumentHandler

parse

public void parse(String uri, DefaultHandler dh) throws SAXException, IOException
Обработать содержимое, описываемое заданным унифицированным идентификатором ресурса (URI), как XML с использованием указанного DefaultHandler.
Parameters:
uri - Расположение данных для обработки.
dh - Обработчик SAX DefaultHandler для использования.
Throws:
IllegalArgumentException - Если uri равен null.
IOException - Если возникают ошибки ввода-вывода.
SAXException - Если при обработке возникли ошибки SAX.
See Also:
  • DocumentHandler

parse

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

parse

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

parse

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

parse

public void parse(InputSource is, DefaultHandler dh) throws SAXException, IOException
Обработать содержимое, заданное InputSource как XML с использованием указанного DefaultHandler.
Parameters:
is - InputSource, содержащий содержимое для обработки.
dh - SAX DefaultHandler для использования.
Throws:
IllegalArgumentException - Если объект InputSource является null.
IOException - Если возникли ошибки ввода-вывода.
SAXException - Если при обработке возникли ошибки SAX.
See Also:
  • DocumentHandler

getParser

public abstract Parser getParser() throws SAXException
Возвращает SAX-парсер, инкапсулированный реализацией этого класса.
Returns:
SAX-парсер, инкапсулированный реализацией этого класса.
Throws:
SAXException - Если при обработке возникли ошибки SAX.

getXMLReader

public abstract XMLReader getXMLReader() throws SAXException
Возвращает XMLReader, инкапсулированный реализацией этого класса.
Returns:
XMLReader, инкапсулированный реализацией этого класса.
Throws:
SAXException - Если при обработке возникли ошибки SAX.

isNamespaceAware

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

isValidating

public abstract boolean isValidating()
Указывает, настроен ли этот парсер на проверку XML-документов.
Returns:
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, внешним ссылкам сущностей протоколами, указанными в свойстве. Если доступ запрещён во время разбора из-за ограничения этого свойства, SAXException будет выброшен методами разбора, определёнными SAXParser.

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

Parameters:
name - Имя свойства, которое нужно установить.
value - Значение свойства, которое нужно установить.
Throws:
SAXNotRecognizedException - Когда базовый XMLReader не распознаёт имя свойства.
SAXNotSupportedException - Когда базовый XMLReader распознаёт имя свойства, но не поддерживает свойство.
See Also:
  • XMLReader.setProperty(java.lang.String, java.lang.Object)

getProperty

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

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

Parameters:
name - Имя свойства, которое нужно получить.
Returns:
Значение запрошенного свойства.
Throws:
SAXNotRecognizedException - Когда базовый XMLReader не распознаёт имя свойства.
SAXNotSupportedException - Когда базовый XMLReader распознаёт имя свойства, но не поддерживает свойство.
See Also:
  • XMLReader.getProperty(java.lang.String)

getSchema

public Schema getSchema()

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

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

Returns:
Schema, используемая, или null, если не используется
Throws:
UnsupportedOperationException - Когда реализация не переопределяет этот метод
Since:
1.5

isXIncludeAware

public boolean isXIncludeAware()

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

Returns:
значение возвращаемое SAXParserFactory.isXIncludeAware(), когда этот парсер был создан из фабрики.
Throws:
UnsupportedOperationException - Когда реализация не переопределяет этот метод
Since:
1.5
See Also:
  • SAXParserFactory.setXIncludeAware(boolean)

© 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://download.java.net/java/early_access/jdk24/docs/api/java.xml/javax/xml/parsers/SAXParser.html

Spec-Zone.ru

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