Duda con librería java para acceso a BBDD

The-Guest

Estoy intentando hacer una librería Java de manera que me valga para cualquier conexión a bases de datos que haga, pero me he topado con algo que no sé resolver.

Al llegar al método para ejecutar un executeUpdate con PreparedStatement no sé muy bien qué pasarle para, por ejemplo, hacer inserts en una tabla con varias columnas de diferentes tipos de datos. Por ejemplo: INSERT INTO canciones VALUES(?,?), siendo el primer ? de tipo int y el segundo de tipo String.

Había pensado en pasarle una lista de listas, de manera que cada una representase una columna de la tabla, pero entonces tendría que recorrer únicamente una posición de cada lista y saltar a la siguiente pero no tengo idea alguna de cómo hacerlo. Otra opción que he pensado, sería pasarle un objeto del tipo canción y llamar varias veces al método, pero no se me ocurre manera (si es que existe) de acceder a las propiedades de cualquier objeto que yo pueda crear desde la clase Object.

willy_chaos

yo lo que hice en su momento para una app de CLI era el metodo

executeReadQuery(String query, Object[] data);

executeWriteQuery(String query, Object[] data);

Definia la query con los valores ? y pasaba el array

internamente preparaba el preparedstatement y recorria el array haciendo los binds con un for.

Si mañana tengo un rato miro de pasarte el código de la función , pero vamos es lo que te comento

El object array podia tener diferentes tipos (ya que es la clase madre...)

Object arr = { int, String, float, String }

por ejemplo

1 respuesta
The-Guest

#2 Pues fíjate que al no trabajar con Object arrays como tal ni se me había pasado por la cabeza.

Probaré también a hacerlo con lista de Object a ver si suena la flauta, gracias por contestar!

Usuarios habituales

  • The-Guest
  • willy_chaos