Suponiendo que ya tienen la librería MySql en el proyecto continuamos con lo siguiente:
Como ejemplo basico representaremos lo que nos mostraria la consola de mysql en un simple select *from
Una mejor manera de decirlo es que haremos una simulacion de la consola MySql (manera sencilla).
Enmi caso mi consulta es select *from usuarios y el resultado de mi consulta en la consola es la siguiente
Ocuparemos dos archivos (Main.java y Conexion.java), en el archivo Conexion.java colocamos el siguiente codigo
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Conexion {
private Connection conexion;
public Conexion(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
//reemplazar cada uno con sus respectivos datos, nombreBD =nombre de la base de datos
//user =usuario de la bd
//pasa=contraseña
conexion=DriverManager.getConnection("jdbc:mysql://127.0.0.1/nombreBD","user","pass");
}catch(Exception e){
e.printStackTrace();
}
}
public void ejecutarConsulta(String sql){
String v,c;
try{
Statement st=conexion.createStatement();
//almacenamos el resultado en un ResultSet rs
ResultSet rs=st.executeQuery(sql);
//creamos una variable que ocuparemos para que no se imprima varias veces el nombre de la columna
boolean yapaso=false;
//ocupamos el while para recorrer el resultSet
while(rs.next()){
v="";
c="";
//con los metodos getMetaData y getColunmnCount obtenemos el numero de columnas que arroja nuestra consulta
int numColumnas=rs.getMetaData().getColumnCount();
//si no ha pasado entramos en el if
if(!yapaso){
//con un ciclo for que va de 1 hasta n numero de columnas
for(int i=1;i<=numColumnas;i++){
//solicitamos el nombre de la columna con el metodo getColumnName pasandole el numero de columna del cual queremos obtener el nombre
//que esta en la variable i y y concatenamos el nombre ala variable para que vaya uniendo los nombres de cada columna y los imprima en una sola linea
c +="Nombre C"+i+"=>"+rs.getMetaData().getColumnName(i)+" \t\t\t";
}
//imprimimos la variable c
System.out.println(c);
//hacemos yapaso en true para que no vuelva a imprimir los nombres de columnas
yapaso=true;
}
for(int i=1;i<=numColumnas;i++){
//ahora con un ciclo for obtenemos el valor de cada columna e igual concatenamos los valores
v+="Column "+i +"=>"+rs.getString(i)+" \t\t\t";
}
//imprimimos la variable v
System.out.println(v);
}
}catch(Exception e){
e.printStackTrace();
}
}
}
En el archivo Main.java colocamos el siguiente codigo
import java.util.ArrayList;
import java.util.List;
public class Main {
private static List lista = new ArrayList<>();
public static void main(String ...a) {
Conexion c=new Conexion();
//ejecutamos una consulta
c.ejecutarConsulta("select *from usuarios");
}
}
Ahora ejecutamos el archivo main (recuerden cambiar nombre y contraseña de la bd asi como la consulta que vaya acorde con sus tablas.
y nos imprime enconsola lo siguiente
Como les mencione es de manera sencilla pero pues es bueno para practicar, Saludos, nos vemos.


No hay comentarios:
Publicar un comentario