Spec-Zone.ru › OpenJDK 21

Класс SAXParser

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

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

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

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

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

Since:
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 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.

Исключения:
UnsupportedOperationException - Когда реализации не переопределяют этот метод
С тех пор:
1.5

parse

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

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

Параметры:
is - Поток ввода, содержащий содержимое для обработки.
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 - Поток ввода, содержащий содержимое для обработки.
hb - SAX HandlerBase для использования.
systemId - Идентификатор системы, необходимый для разрешения относительных URI.
Исключения:
IllegalArgumentException - Если заданный InputStream равен null.
IOException - Если возникает ошибка ввода-вывода при взаимодействии с InputStream.
SAXException - Если возникают ошибки SAX во время обработки.
См. также:
  • version of this method instead.

parse

public void parse(InputStream is, DefaultHandler dh) throws SAXException, IOException
Обработать содержимое данного экземпляра InputStream как XML с использованием указанного DefaultHandler.
Параметры:
is - Поток ввода, содержащий содержимое для обработки.
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 - Поток ввода, содержащий содержимое для обработки.
dh - SAX DefaultHandler для использования.
systemId - Идентификатор системы, необходимый для разрешения относительных URI.
Исключения:
IllegalArgumentException - Если данный InputStream равен null.
IOException - Если возникают ошибки ввода-вывода.
SAXException - Если возникают ошибки SAX во время обработки.
См. также:
  • version of this method instead.

parse

public void parse(String uri, HandlerBase hb) throws SAXException, IOException
Обработать содержимое, указанное Uniform Resource Identifier (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
Обработать содержимое, указанное Uniform Resource Identifier (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.
Parameters:
is - Источник входных данных, содержащий содержимое для обработки.
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, 2023, 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/21/docs/api/java.xml/javax/xml/parsers/SAXParser.html

Spec-Zone.ru

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