Entre las muchas nuevas características y mejoras proporcionadas por Java SE 6, vale la pena mencionar que la versión JDBC que proporciona un mecanismo de acceso a la base de datos para los programas Java se ha actualizado a 4.0. Esta versión, con nombre en código de JSR-221, proporciona un mecanismo y flexibilidad de escritura de código más conveniente, y admite más tipos de datos.
Las nuevas características de JDBC 4.0 se dividen en las siguientes cuatro categorías:
1. Gestión del controlador y conexión
2. Manejo de excepciones
3. Soporte de tipo de datos
4. Cambios de API
Lo anterior no es el contenido clave del que hablará este artículo. Aquí hay una forma de operar datos de tipo XML por JDBC4.0. Los detalles específicos son los siguientes:
Después del lanzamiento de JDBC 4.0, sus características multi-caracteres están recibiendo una atención generalizada. La actualización más importante es admitir los tipos de datos XML (este tipo de datos se define en el último estándar SQL2003). Por supuesto, guardar datos XML en una base de datos y actualizar datos XML en aplicaciones no es una tecnología nueva. Pero esta es la primera vez que JDBC proporciona una interfaz de mapeo (java.sql.sqlxml) y utiliza esta interfaz para admitir los tipos de datos SQL/XML. Por supuesto, para satisfacer las necesidades de manejar los tipos de datos XML, otras interfaces, como Java.sql.Connection y Java.sql.resultset, también se han actualizado.
Antes de iniciar el estándar SQL2003 y los tipos de datos XML, los desarrolladores deben guardar los datos XML en los campos de tipo de blob, CLOB o de texto. Ahora, muchas bases de datos convencionales (como SQL Server, Oracle y DB2) han agregado soporte para los tipos de datos XML. Pero antes de JDBC4, las aplicaciones Java aún tenían que convertir los tipos de datos XML en la base de datos a tipos de datos compatibles con JDBC. Pero el nuevo JDBC puede unir XML a través de una interfaz local, por lo que se vuelve más fácil y eficiente procesar datos XML en cualquier base de datos.
En este artículo, presentaremos cómo usar JDBC4.0 para manipular campos de tipo XML (guardar y obtener datos XML), y dar un ejemplo para la referencia de los lectores.
1. Almacenar y obtener datos XML
Para guardar los datos XML en un campo de tipo XML, primero debemos llamar al método java.sql.connection.createsqlxml (). Este método devuelve una instancia de java.sql.sqlxml. Luego podemos agregar datos XML al objeto sqlxml llamando a setOutputStream (), setCharacterStream () o simplemente llamando a SetString (String XML). Esta función debe tenerse en cuenta es muy similar al uso de tipos BLOB y CLOB.
Una de las características clave de JDBC4.0 es que también podemos obtener una implementación de una clase que establece avax.xml.transform.result llamando al método setResult (class resultclass) de java.sql.sqlxml. Estas clases incluyen Domresult, Jaxbresult y Saxresult. En otras palabras, simplemente podemos hacer lo siguiente sin convertir:
1. Obtenga datos XML
2. Cree un objeto DomResult independiente
3. Pase Domresult al objeto Java.sql.Sqlxml
4. Guarde los datos XML directamente en el campo de la base de datos de respuesta a través de Java.sql.statement
Para obtener datos de tipo SQLXML por java.sql.resultset, solo necesitamos llamar a getsqlxml y especificar el nombre o índice de campo correspondiente. Luego podemos obtener los datos XML reales de java.io.inputstream a través de getBinaryStream (), getCharacterStream () o getString () o una cadena simple. Guardar datos XML también obtiene datos XML de manera similar. También podemos obtener la fuente XML llamando al método GetSource (clase SourCeClass) de la instancia del objeto SQLXML. Por lo tanto, podemos acceder a los datos XML de cualquier clase que implementa javax.xml.transform.esurce.
2. Programa de ejemplo
Desde que JDBC4 se lanzó oficialmente el 11 de diciembre de 2006 (lanzado con J2SE6.0), muchos controladores de bases de datos ahora no admiten muy bien JDBC4. En este ejemplo, se utiliza una versión 10.2 de la base de datos Apache Derby para discutir el almacenamiento y la adquisición de datos de tipo XML. Esta versión de Derby aún no posee java.sql.sqlxml, lo que significa que no podemos obtener directamente los datos XML del valor del resultado y unir los datos XML. Pero Derby es compatible con SQL 2003 y puede usar el modo de inserción muy fácilmente, y aún puede demostrar cómo manipular los datos XML, como si usara un controlador que admite completamente JDBC4. El código utilizado para manipular los datos XML de Derby es el siguiente:
import java.io.StringReader; import java.sql.*; public class xmldBtester {static final string xml1 = "<icect>"+"<title> primer artículo </title>"+"<autor> John Smith </autor>"+"<body> un artículo muy corto. </body>"+"</ artículo>"; static Final String xml2 = "<Artículo>" Título> un artículo muy corto. </body> "+" </ artículo> "; static Final String xml2 =" <Artículo> "Título>" Título de Body> muy corto. </body> "+" </icículo>; Artículo </title> "+" <Atafer> Mary Jones </futhor> "+" <Body> Otro artículo breve. </body> "+" </icículo> "; static final String xml3 =" <ic artículo> "+" <titter> tercer artículo </title> "+" <autor> John Smith </autor> "+" <body> Último artículo. </body> "+" </icótículo> Xml2, xml3}; public static void main (string s []) {xmldBtester xdt = new xmldBtester (); conexión c = xdt.getConnection (); xdt.loadDemodata (c); xdt.demoxmlResult (c);Lo anterior es el método de usar JDBC4.0 para operar datos de tipo XML introducidos a usted. Espero que te sea útil. Si tiene alguna pregunta, déjame un mensaje y el editor le responderá a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin.com!