Java JDBC: diferencia entre el conjunto de filas y el conjunto de resultados

 Las características de ResultSet son las siguientes:

  • Mantiene una conexión a una base de datos y, por eso, no se puede serializar.
  • no puede pasar el objeto del conjunto de resultados de una clase a otra clase a través de la red.
  • El objeto ResultSet mantiene un cursor que apunta a su fila actual de datos. Inicialmente, el cursor se coloca antes de la primera fila. El siguiente método mueve el cursor a la siguiente fila y, dado que devuelve false cuando no hay más filas en el objeto ResultSet, se puede usar en un ciclo while para iterar a través del conjunto de resultados.
  • javax.sql.rowset.RowSet es un contenedor alrededor de un ResultSet que hace posible usar el conjunto de resultados como un componente JavaBeans en JDBC java.
  • ResultSet por sí solo no se puede utilizar como componente de JavaBeans.

Las características de RowSet son las siguientes:

  • es una versión desconectada y serializable de un ResultSet de JDBC. también amplía la interfaz ResultSet.
  • El conjunto de filas se puede serializar porque no tiene conexión con ninguna base de datos.
  • La interfaz de conjunto de filas proporciona un conjunto de propiedades de JavaBeans que permiten configurar una instancia de conjunto de filas para conectarse a una fuente de datos JDBC y leer algunos datos de la fuente de datos. Un grupo de métodos setter (setInt, setBytes, setString, etc.) proporciona una forma de pasar parámetros de entrada a la propiedad de comando de un conjunto de filas.
  • La interfaz Row Set amplía la interfaz ResultSet en Java.
  • javax.sql.rowset.JdbcRowSet la subclase de Row Set es un contenedor alrededor de un ResultSet que hace posible usar el conjunto de resultados como un componente JavaBeans.

Nota: RowSet es alternativo a ResultSet pero es más efectivo que ResultSet

Ahora terminemos diferenciándolos de la siguiente manera:

          conjunto de filas                                                                                     Conjunto resultante                                              
RowSet está presente en el paquete javax.sql  ResultSet está presente en el paquete java.sql 
Un conjunto de filas se puede conectar o desconectar de la base de datos. Un ResultSet siempre mantiene la conexión con la base de datos.
RowSet es desplazable proporcionando más flexibilidad   ResultSet por defecto siempre es solo hacia adelante 
 Un objeto de conjunto de filas se puede serializar. No se puede serializar.
Puede pasar un objeto de conjunto de filas a través de la red. El objeto ResultSet no se puede pasar a otro a través de la red.

El objeto de conjunto de resultados es un objeto JavaBean.

 RowSet usando el método RowSetProvider.newFactory().createJdb cRowSet().

El objeto Result Set no es un objeto JavaBean

conjunto de resultados usando el método executeQuery()

ResultSetDe forma predeterminada, el objeto RowSet se puede desplazar y actualizar. De forma predeterminada, el objeto ResultSet no se puede desplazar ni actualizar.

Publicación traducida automáticamente

Artículo escrito por rachanapriyadarshnisamal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *