Hola a todos,
estoy trtabajando sobre un sistema que debe accesar constantemente a una base de datos, me estan pidiendo que maneje una clase ((ConexionDB)), que sea accesado mediante un JSP, no tengo problema con dar de alta, o baja los campos que llegue a necesitar, el problema que se me presenta es al momento de hacer un query, ya que el ResultSet me da el String de la columna que esty buscando, sin embargo, ya que estoy usando una clase directamente, y ya que esto es un Bean, quisiera hacerlo un poco mas de forma generica, lo que he estado haciendo es algo asi:
public class ConexionDB {
public String error = " ";
public Connection con= null;
public Statement stt = null;
public ResultSet rSet = null;
public ConexionDB(){
super();
}
public boolean ConexionExitosa(){
boolean resp = false;
try{
Class.forName("org.gjt.mm.mysql.Driver").newInstan ce();
this.con = DriverManager.getConnection("jdbc:mysql://localhost/base","usr","pswd");
resp = true;
this.error = "Conexion exitosa!";
} catch(Exception e){
this.error = "Error al conectar debido a: \n" + e ;
}
return resp;
}
public String busca(String query, String campo){
String resSet = " ";
String acum = " ";
if(ConexionExitosa()){
try{
this.stt = this.conCat.createStatement();
rSet = stt.executeQuery(query);
while(rSet.next()){
resSet = rSet.getObject(campo).toString() + "\n";
acum = acum +resSet;
}
this.stt.close();
this.conCat.close();
} catch(Exception e){
this.error = "No se pudo llevar a cabo la busqeda debido a: " + e;
}
} return acum;
}
}
El problema que veo aqui, es que de querer manejarlo de esta forma, tendre que crear un metodo que reciba n cantidad de campos, y no creo que la cosa vaya por ahi, la pregunta es ¿hay alguna forma de que pueda hacer el query independientemente de la cantidad de campos que necesite enviar y desplegarlos directamente en el JSP?