Интерфейс SQLXML
Драйвер JDBC обеспечивает поддержку API JDBC 4.0, который реализует интерфейс java.sql.SQLXML. Интерфейс SQLXML определяет методы для обмена данными XML и их обработки. Тип данных SQLXML сопоставляется с типом данных XML SQL Server.
Интерфейс SQLXML предоставляет методы для доступа к значению XML в формате String, Reader или Writer, а также Stream. Обратиться к значению XML можно также через свойство Source, а задать его — через свойство Result. Эти свойства используются интерфейсами API синтаксического анализатора XML, такими как модель DOM, простой интерфейс API для XML (SAX) и потоковый интерфейс API для XML (StAX), а также преобразованиями XSLT и XPath.
Замечания
В следующей таблице приводится описание методов, определенных в интерфейсе SQLXML.
Синтаксис метода | Описание метода |
---|---|
void free() | Этот метод освобождает объект SQLXML и ресурсы, занятые им. |
InputStream getBinaryStream() | Возвращает входной поток для чтения данных из SQLXML. |
Reader getCharacterStream() | Возвращает данные XML в виде объекта java.io.Reader или потока символов. |
T extends Source T getSource(Class<T> sourceClass) | Возвращает объект Source (источник) для чтения значения XML, заданного этим объектом SQLXML. Примечание. Метод getSource поддерживает следующие источники: javax.xml.transform.dom.DOMSource, javax.xml.transform.sax.SAXSource, javax.xml.transform.stax.StAXSource и java.io.InputStream. |
String getString() | Возвращает строковое представление значения XML, указанного данным объектом SQLXML. |
OutputStream setBinaryStream() | Извлекает поток, который может быть использован для записи значения XML, представляемого данным объектом SQLXML. |
Writer setCharacterStream() | Возвращает поток, который должен быть использован для записи значения XML, представляемого данным объектом SQLXML. |
T extends Result T setResult(Class<T> resultClass) | Возвращает объект Result (результат) для записи значения XML, заданного этим объектом SQLXML. Примечание. Метод setResult поддерживает следующие источники: javax.xml.transform.dom.DOMResult, javax.xml.transform.sax.SAXResult, javax.xml.transform.stax.StaxResult и java.io.OutputStream. |
void setString(String value) | Задает значение XML, назначенное данным объектом SQLXML для указанного представления String. |
Приложения могут читать XML-значения в объекте SQLXML или записывать их только один раз.
При вызове метода free() объект SQLXML становится недействительным: его больше нельзя прочесть или записать в него значения. Если приложение пытается вызвать для этого объекта SQLXML метод, отличный от метода free(), возникает исключение.
Объект SQLXML больше нельзя будет прочесть или записать в него значения, если приложение вызовет любой из следующих методов считывания: getSource, getCharacterStream, getBinaryStream или getString.
Объект SQLXML больше нельзя будет прочесть или записать в него значения, если приложение вызовет любой из следующих методов записи: setResult, setCharacterStream, setBinaryStream или setString.