completo, el cdigo contiene las funciones bsicas que debe tener un proyecto de Base de
Datos, aade nuevos registros, los elimina y tambin puede modificar esos registros.
El proyecto.
- Nuestra base de datos se llama "DBContactos" en MySQL
- Contiene una nica tabla llamada "Persona"
Muy bien, ahora para probar que la conexin en verdad funciona, creamos una clase y la
llamamos "persona.java", en esta clase colocamos el siguiente cdigo:
package contactos;
/* @web http://wovi.com.mx/ @authors: m@gh / j@ms */
public class persona {
conectate con;
public persona (){
con = new conectate();
}
}
Ahora en el Main.java, colocamos el siguiente cdigo:
package contactos;
/* @web http://wovi.com.mx/ @authors: m@gh / j@ms */
public class Main {
public static void main(String[] args) {
persona p = new persona();
p.con.desconectar();
}
}
Ejecutamos nuevamente el
proyecto (F6) y tenemos el nuevo
registro aadido a nuestra tabla
La nueva funcion GetDatos() esta definida como Object [][], tambien podemos definirla como
String[][], la funcin est dividida en dos partes, la primera encargada de realizar una consulta
para conocer el nmero de registros existentes y guardarla en la variable "registros", la
segunda parte de la funcin 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 cdigo del Main, debe quedar as:
package contactos;
/* @web http://wovi.com.mx/ authors: m@gh / j@ms */
public class Main {
public static void main(String[] args) {
persona p = new persona();
Object [][] sc ;
sc = p.getDatos();
for(int i=0;i<sc.length ;i++){
System.out.println("> " + sc[i][0] + " - " + sc[i][1]);
}
p.con.desconectar();
}
}
Ejecuta el programa
Empezemos:
Paso 1: crea un jFrame "tablaform" y coloca
los siguientes controles, renmbralos como se
ve en la imagen de abajo. Cuidado con las
maysculas y minsculas!
Paso 4: Aade estos dos mtodos, el primero updateTabla(), actualiza el objeto tabla cada vez
que se lo invoca, el mtodo nuevo(), su funcin es la de limpiar los jTextFields para aadir
nuevos datos.
private void updateTabla(){
String[] columNames = {"id","Nombre","ap. Paterno","ap. Materno", "E-Mail"};
// se utiliza la funcion
dtPer = p.getDatos();
// se colocan los datos en la tabla
DefaultTableModel datos = new DefaultTableModel(dtPer,columNames);
tabla.setModel(datos);
}
Explicacin: Esta nueva funcin, recibe como parmetros el "id" cdigo del registro que se
modificara, adems de los datos necesarios para realizar la consulta, como el nombre, apellido
paterno , materno y el mail de la persona. Luego se realiza una consulta SQL pasando esos
datos.
Ya en el jFrame de nuestro proyecto, al nuevo jButton que creamos, aadimos el siguiente
cdigo:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
if (fila > -1){
String codigo = String.valueOf(tabla.getValueAt(fila, 0));
String name = txtname.getText();
String pat = txtpaterno.getText();
String mat = txtmaterno.getText();
String mail = txtmail.getText();
p.updatePersona(codigo, name, pat, mat, mail);
updateTabla();
}
}
Lo nico que hace es capturar los datos del JTable, asignarlas a variables y llamar a la funcin
updatePersona().