Hacer un programa en
java por medio de una interfaz grafica un menú que incluya nuevo, guardar, y
eliminar un cliente de una base de datos, la interfaz debe contener botones y
cajas de texto para introducir la información como su nombre, dirección y teléfono,
y en el menú debe a ver una opción de salir.
Necesitamos tener
instalado MySQL en este link como
instalarlo
Primero hacemos la base de datos en
mysql:
CREATE DATABASE cliente; creamos la base de datos
USE cliente; usamos esa
base de datos
CREATE TABLE `cliente` ( creamos las
tablas a usar para la base de datos
`nombre` varchar(30) default NULL,
`direccion` varchar(50) default NULL,
`telefono`
varchar(20) default NULL
)
ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `cliente`
(`nombre`,`direccion`,`telefono`) VALUES insertamos los
datos en la tabla cliente
('Manuel','salinas 203','12345677');
Despues descargas mysql-connector-java
y lo pones en C:\Program Files\Java\jdk1.6.0_22\jre\lib\ext esto es muy importante o lo guardas en la carpeta del
proyecto este conector es un archivo .jar
después creamos un archivo con el nombre cliente (cliente.java) en jcreator
después creamos un archivo con el nombre cliente (cliente.java) en jcreator
import
java.awt.*;
import
java.awt.event.*;
import
java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.PreparedStatement;
import
java.sql.SQLException;
import
java.sql.Statement;
import
javax.swing.*;
public class
cliente extends JFrame
{
public static String
url="jdbc:mysql://localhost:3307/cliente?user=root&password=";
JLabel l1, l2, l3;
public static JTextField txt1,
txt2, txt3;
public static JButton b1, b2, b3;
JPanel contentPane;
JMenuBar
menu;
JMenu archivo, administrar;
JMenuItem salir, nuevo, guardar, Eliminar;
public cliente() throws
InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException
{
super();
Inicializar();
this.setVisible(true);
}
private void Inicializar()
throws InstantiationException, IllegalAccessException, ClassNotFoundException,
SQLException
{
menu
= new JMenuBar();
archivo = new JMenu("Archivo");
administrar = new
JMenu("Administrar");
salir = new
JMenuItem("Salir");
nuevo = new
JMenuItem("Nuevo");
guardar
= new JMenuItem("Guardar");
Eliminar = new
JMenuItem("Eliminar");
archivo.add(salir);
administrar.add(nuevo);
administrar.add(guardar );
administrar.add(Eliminar);
menu.add(archivo);
menu.add(administrar);
l1 = new
JLabel();
l2 = new
JLabel();
l3 = new
JLabel();
txt1 = new
JTextField();
txt2 = new
JTextField();
txt3 = new
JTextField();
b1 = new
JButton();
b2 = new
JButton();
b3 = new
JButton();
contentPane =
(JPanel)this.getContentPane();
l1.setBackground(new
Color(0, 170, 255));
l1.setHorizontalAlignment(SwingConstants.CENTER);
l1.setHorizontalTextPosition(SwingConstants.CENTER);
l1.setText("Nombre");
l2.setBackground(new
Color(0, 170, 255));
l2.setHorizontalAlignment(SwingConstants.CENTER);
l2.setText("Dirección");
l3.setHorizontalAlignment(SwingConstants.CENTER);
l3.setText("Telefono");
b1.setText("Nuevo");
b1.addActionListener(new
ActionListener() {
public
void actionPerformed(ActionEvent e)
{
limpiar();
}
});
b2.setText("Guardar");
b2.addActionListener(new
ActionListener() {
public
void actionPerformed(ActionEvent e)
{
guardar();
}
});
b3.setText("Eliminar");
b3.addActionListener(new
ActionListener() {
public
void actionPerformed(ActionEvent e)
{
eliminar();
}
});
nuevo.addActionListener(new
ActionListener() {
public
void actionPerformed(ActionEvent e)
{
limpiar();
}
});
guardar.addActionListener(new
ActionListener() {
public
void actionPerformed(ActionEvent e)
{
guardar();
}
});
Eliminar.addActionListener(new
ActionListener() {
public
void actionPerformed(ActionEvent e)
{
eliminar();
}
});
salir.addActionListener(new
ActionListener() {
public
void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
contentPane.setLayout(null);
addComponent(contentPane,
l1, 41,70,60,28);
addComponent(contentPane,
l2, 42,108,60,22);
addComponent(contentPane,
l3, 39,148,60,18);
addComponent(contentPane,
txt1, 110,76,100,22);
addComponent(contentPane,
txt2, 110,111,100,22);
addComponent(contentPane,
txt3, 110,148,100,22);
addComponent(contentPane,
b1, 251,70,108,28);
addComponent(contentPane,
b2, 251,107,108,28);
addComponent(contentPane,
b3, 251,144,108,28);
addComponent(contentPane,
menu, 0,1,700,28);
this.setTitle("Nuevo
Cliente");
this.setLocation(new
Point(235, 195));
this.setSize(new Dimension(446,
244));
this.setResizable(false);
}
private void
addComponent(Container container,Component c,int x,int y,int width,int height)
{
c.setBounds(x,y,width,height);
container.add(c);
}
public static void main(String[]
args) throws SQLException, InstantiationException, IllegalAccessException,
ClassNotFoundException
{
new cliente();
}
private static void limpiar() {
txt1.setText("");
txt2.setText("");
txt3.setText("");
}
private static void eliminar() {
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection
con=DriverManager.getConnection(url);
Statement
st=con.createStatement();
String
query="delete from cliente where
nombre='"+txt1.getText()+"'";
int
n=st.executeUpdate(query);
con.close();
}catch
(SQLException e2) {
e2.printStackTrace();
} catch
(InstantiationException e2) {
//
TODO Auto-generated catch block
e2.printStackTrace();
} catch
(IllegalAccessException e2) {
//
TODO Auto-generated catch block
e2.printStackTrace();
} catch
(ClassNotFoundException e2) {
//
TODO Auto-generated catch block
e2.printStackTrace();
}
JOptionPane.showMessageDialog(null,
"Se elimino el registro "+txt1.getText());
txt1.setText("");
}
private static void guardar() {
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection
con=DriverManager.getConnection(url);
Statement
st=con.createStatement();
String
query="insert into cliente values ('"+ txt1.getText()
+"','"+txt2.getText()+"','"+txt3.getText()+"')";
int
n=st.executeUpdate(query);
con.close();
}catch
(SQLException e1) {
e1.printStackTrace();
} catch
(InstantiationException e1) {
//
TODO Auto-generated catch block
e1.printStackTrace();
} catch
(IllegalAccessException e1) {
//
TODO Auto-generated catch block
e1.printStackTrace();
} catch
(ClassNotFoundException e1) {
//
TODO Auto-generated catch block
e1.printStackTrace();
}
JOptionPane.showMessageDialog(null, "Se Guardo el registro ");
limpiar();
}
}
No hay comentarios:
Publicar un comentario