Nuestra clase Persona.java que da de esta forma:
package contactos; import java.sql.*; /** * @web http://jc-mouse.blogspot.com/ * @author mouse */ public class persona { conectate con; public persona (){ con = new conectate(); } /*Añade un nuevo registro*/ public void NuevaPersona(String name, String ap, String am, String mail){ try { PreparedStatement pstm = con.getConnection().prepareStatement("insert into " + "persona(Nombre, appPaterno, appMaterno, mail) " + " values(?,?,?,?)"); pstm.setString(1, name); pstm.setString(2, ap); pstm.setString(3, am); pstm.setString(4, mail); pstm.execute(); pstm.close(); }catch(SQLException e){ System.out.println(e); } } /*obtenemos todos los datos de la tabla*/ public Object [][] getDatos(){ int x = 0; //obtenemos la cantidad de registros existentes en la tabla try{ PreparedStatement pstm = con.getConnection().prepareStatement("SELECT count(1) as total FROM persona "); ResultSet res = pstm.executeQuery(); res.next(); x = res.getInt("total"); res.close(); }catch(SQLException e){ System.out.println(e); } Object[][] s = new String[x][2]; //realizamos la consulta sql y llenamos los datos en "Object" try{ PreparedStatement pstm = con.getConnection().prepareStatement("SELECT " + " id, Nombre " + " FROM persona" + " ORDER BY id "); ResultSet res = pstm.executeQuery(); int i = 0; while(res.next()){ String estCodigo = res.getString("id"); String estNombre = res.getString("nombre"); s[i][0] = estCodigo; s[i][1] = estNombre; i++; } res.close(); }catch(SQLException e){ System.out.println(e); } return s; } }
La nueva funcion GetDatos() esta definida como Object [][], tambien podemos definirla como String[][], la funcion esta dividida en dos partes, la primera encargada de realizar una consulta para conocer el numero de registros existentes y gurdarla en la variable "registros", la segunda parte de la funcion utilizando la variable "registros" crea un objeto con esas dimensiones y realiza la consulta para extraer los datos y colocarlas en la variable "data[][]" que es la que retorna.
el codigo del Main, debe quedar asi:
package contactos;
/**
* @web http://jc-mouse.blogspot.com/
* @author Mouse
*/
public class Main {
public static void main(String[] args) {
persona p = new persona();
Object [][] sc ;
sc = p.getDatos();
for(int i=0;i " + sc[i][0] + " - " + sc[i][1]);
}
p.con.desconectar();
}
}
Ejecuta el programa