Interfaz SQLXML
El controlador JDBC ofrece compatibilidad con la API de JDBC 4.0, que presenta la interfaz java.sql.SQLXML. La interfaz SQLXML define métodos para interactuar con datos XML y manipularlos. El tipo de datos SQLXML se asigna al tipo de datos xml de SQL Server.
La interfaz SQLXML proporciona métodos para obtener acceso al valor XML como String, Reader o Writer, o como Stream. También se puede acceder al valor XML mediante Source o establecerlo como Result, que se usan con las API del analizador XML, como Document Object Model (DOM), Simple API for XML (SAX) y Streaming API for XML (StAX), así como con las transformaciones XSLT y con XPath.
Observaciones
La tabla siguiente describe los métodos definidos en la interfaz SQLXML:
Sintaxis del método | Descripción del método |
---|---|
void free() | Este método libera el objeto SQLXML y los recursos que contiene. |
InputStream getBinaryStream() | Devuelve un flujo de entrada para leer datos desde SQLXML. |
Reader getCharacterStream() | Devuelve los datos XML como un objeto java.io.Reader o como un flujo de caracteres. |
T extends Source T getSource(Class<T> sourceClass) | Devuelve un origen para leer el valor XML que este objeto SQLXML especifica. Nota: El método getSource es compatible con los siguientes orígenes: javax.xml.transform.dom.DOMSource, javax.xml.transform.sax.SAXSource, javax.xml.transform.stax.StAXSource y java.io.InputStream. |
String getString() | Devuelve una representación de cadena del valor XML designado por este objeto SQLXML. |
OutputStream setBinaryStream() | Recupera un flujo que se puede usar para escribir el valor XML que representa este objeto SQLXML. |
Writer setCharacterStream() | Devuelve un flujo que se va a usar para escribir el valor XML que representa este objeto SQLXML. |
T extends Result T setResult(Class<T> resultClass) | Devuelve un resultado para establecer el valor XML que este objeto SQLXML especifica. Nota: El método setResult es compatible con los siguientes orígenes: javax.xml.transform.dom.DOMResult, javax.xml.transform.sax.SAXResult, javax.xml.transform.stax.StaxResult y java.io.OutputStream. |
void setString(String value) | Establece el valor XML designado por este objeto SQLXML para la representación String especificada. |
Las aplicaciones pueden leer y escribir valores XML en o desde un objeto SQLXML solamente una vez.
Cuando se llama al método free(), un objeto SQLXML se vuelve no válido y no puede ser leído ni escrito. Si la aplicación intenta invocar a un método que no sea free() en ese objeto SQLXML, se genera una excepción.
El objeto SQLXML no puede ser leído ni escrito cuando la aplicación llama a cualquiera de los siguientes métodos captador: getSource, getCharacterStream, getBinaryStream y getString.
El objeto SQLXML no puede ser leído ni escrito cuando la aplicación llama a cualquiera de los siguientes métodos establecedor: setResult, setCharacterStream, setBinaryStream y setString.