MANTENIMIENTO
DE CLIENTES EN JAVA SWING
Crear
una clase llamada Mysql
private static String db =
"unalm";
private static String user = "root";
private static String pass =
"";
private static String url =
"jdbc:mysql://localhost/" + db;
private static Connection
Conn;
public static Connection
geConnection(){
try {
Class.forName("com.mysql.jdbc.Driver");
Conn=DriverManager.getConnection(url, user, pass);
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Error " + e.getMessage());
}
return Conn;
}
Diseño
de formularios
Código
de los botones en los eventos
btnGuardarActionPerformed
try {
String sql = "insert into
contactos (nombre, direccion, telefono, correo)"
+ "values
(?,?,?,?)";
PreparedStatement ps =
conn.prepareCall(sql);
ps.setString(1,
txtNombres.getText());
ps.setString(2,
txtDireccion.getText());
ps.setString(3,
txtTelefono.getText());
ps.setString(4,
txtCorreo.getText());
int n = ps.executeUpdate();
if (n > 0) {
JOptionPane.showMessageDialog(null,
"Datos Guardados correctamente");
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null,
"Error" + e.getMessage());
}
Llenar();
Limpiar();
btnModificarActionPerformed
try {
String sql
="Update contactos set nombre =?, direccion=?, telefono=?, correo=?"
+ "where id=?";
int fila =
jTable1.getSelectedRow();
String dao
=(String)jTable1.getValueAt(fila, 0);
PreparedStatement ps=
conn.prepareStatement(sql);
ps.setString(1,
txtNombres.getText());
ps.setString(2,
txtDireccion.getText());
ps.setString(3,
txtTelefono.getText());
ps.setString(4,
txtCorreo.getText());
ps.setString(5, dao);
int n = ps.executeUpdate();
if(n>0){
Limpiar();
Llenar();
JOptionPane.showMessageDialog(null, "Datos modificados");
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null,
"Error " + e.getMessage());
}
bntEliminarActionPerformed
try {
int fila =
jTable1.getSelectedRow();
String sql ="delete from
contactos where id=" + jTable1.getValueAt(fila, 0);
sent= conn.createStatement();
int n = sent.executeUpdate(sql);
if(n>0){
Llenar();
JOptionPane.showMessageDialog(null, "Datos ELIMINADOS");
Limpiar();
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null,
"Error " + e.getMessage());
}
btnSalirActionPerformed
System.exit(0);
Funcion llenar
void Llenar() {
try {
conn = Mysql.geConnection();
String[] titulos = {"id",
"Nombre", "Direccion", "Telefono",
"Correo"};
String sql = "select * from
contactos";
model = new DefaultTableModel(null, titulos);
sent = conn.createStatement();
ResultSet rs = sent.executeQuery(sql);
String[] fila = new String[5];
while (rs.next()) {
fila[0] =
rs.getString("id");
fila[1] =
rs.getString("nombre");
fila[2] =
rs.getString("direccion");
fila[3] =
rs.getString("telefono");
fila[4] =
rs.getString("correo");
model.addRow(fila);
}
jTable1.setModel(model);
} catch (Exception e) {
e.printStackTrace();
}
}
DefaultTableModel model;
Connection conn;
Statement sent;
/**
* Creates new form Cliente
*/
public Cliente() {
initComponents();
conn = Mysql.geConnection();
Desabilitar();
Llenar();
}
void Desabilitar() {
txtNombres.setEditable(false);
txtDireccion.setEditable(false);
txtCorreo.setEditable(false);
txtTelefono.setEditable(false);
}
void Limpiar() {
txtNombres.setText("");
txtDireccion.setText("");
txtCorreo.setText("");
txtTelefono.setText("");
}
void Habilitar() {
txtNombres.setEditable(true);
txtDireccion.setEditable(true);
txtCorreo.setEditable(true);
txtTelefono.setEditable(true);
txtNombres.requestFocus();
}
jTable1MouseClicked
if (evt.getButton()==1){
int fila =jTable1.getSelectedRow();
try {
Habilitar();
String sql = "select *
from contactos where id=" + jTable1.getValueAt(fila, 0);
sent= conn.createStatement();
ResultSet rs =
sent.executeQuery(sql);
rs.next();
txtNombres.setText(rs.getString("nombre"));
txtDireccion.setText(rs.getString("direccion"));
txtTelefono.setText(rs.getString("telefono"));
txtCorreo.setText(rs.getString("correo"));
} catch (Exception ex) {
ex.printStackTrace();
}
}
RESULTADO
Interesante, me gustaria poder ver los formularios. Esta el codigo para descargas?
ResponderEliminareso es el codigo amigo
ResponderEliminar