Uma Agenda usando MYSQL/JDBC/LINUX pra vocês!

Achei este código no forum, mas tive que fazer algumas modificações nele, para se adaptar ao linux… está rodando legal… vai adiantar muito no seu aprendizado:

[code]import java.awt.;
import java.awt.event.
;
import javax.swing.;
import java.sql.
; // puxar os eventos para o banco

public class Agenda extends JFrame
{
//atributos
private JLabel l1,l2,l3,l4;
private JTextField tf1,tf2,tf3,tf4;
private JButton B_ins, B_sair,B_alte,B_excl;
private Connection con; //objeto do tipo coneções
private Statement st; // objeto para enviar as instruções para o banco (statement)
// posso usar os prepared statement que prepara antes de enviar
private ResultSet rs; // as instruções vão voltar no result - se for selecaoou consulta

// metodo construtor
public Agenda()
{
this.getContentPane().setLayout(null);
l1=new JLabel();
l1.setBounds(10,10,80,20);
l1.setText(“Código”);
this.getContentPane().add(l1);

l2=new JLabel();
l2.setBounds(10,30,80,20);
l2.setText(“Nome”);
this.getContentPane().add(l2);

l3=new JLabel();
l3.setBounds(10,50,80,20);
l3.setText(“Fone”);
this.getContentPane().add(l3);

l4=new JLabel();
l4.setBounds(10,70,80,20);
l4.setText(“Email”);
this.getContentPane().add(l4);

tf1=new JTextField();
tf1.setBounds(100,10,80,20);
this.getContentPane().add(tf1);

tf2=new JTextField();
tf2.setBounds(100,30,80,20);
this.getContentPane().add(tf2);

tf3=new JTextField();
tf3.setBounds(100,50,80,20);
this.getContentPane().add(tf3);

tf4=new JTextField();
tf4.setBounds(100,70,80,20);
this.getContentPane().add(tf4);

B_ins=new JButton();
B_ins.setBounds(100,180,80,20);
B_ins.setText(“INCLUIR”);
B_ins.addActionListener(new ActionListener ()
// em java qq evento é definido atraves de interface
{
public void actionPerformed(ActionEvent e)
{
inserir(e);
}
});
this.getContentPane().add(B_ins);
B_alte=new JButton(); //instancio o botao alterar
B_alte.setText(“Alterar”);
B_alte.setBounds(100,220,80,20);
B_alte.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
Alterar();
}
});
this.getContentPane().add(B_alte);
B_excl=new JButton();
B_excl.setBounds(100,200,80,20);
B_excl.setText(“Excluir”);
B_excl.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
Excluir();
}
});
this.getContentPane().add(B_excl);
B_sair=new JButton();
B_sair.setBounds(100,160,80,20);
B_sair.setText(“SAIR”);
B_sair.addActionListener(new ActionListener ()
{
public void actionPerformed (ActionEvent e)
{
System.exit(0);
}
});

this.getContentPane().add(B_sair);
}//fim Construtor
public void Alterar()
{
try
{
Class.forName(“com.mysql.jdbc.Driver”); // verifica se existe
con=DriverManager.getConnection(“jdbc:mysql://localhost/teste?user=root”);
st=con.createStatement();
String sql=“Update agejava set nome=’”+tf2.getText();
sql+="’,fone=’"+tf3.getText()+"’,email=’";
sql+=tf4.getText()+"‘where codigo="+tf1.getText();
st.execute(sql);
System.out.println(“ALTEROU COM SUCESSO!”);
con.close();
}
catch(Exception ex)
{
System.out.println(“Erro ao Alterar”+ex);
}
}
public void Excluir()
{
try
{
Class.forName(“com.mysql.jdbc.Driver”); // verifica se existe
con=DriverManager.getConnection(“jdbc:mysql://localhost/teste?user=root”);;
st=con.createStatement();
st.execute(“delete from agejava where codigo=”+tf1.getText());
System.out.println(“EXCLUIU COM SUCESSO!”);
con.close();
}
catch(Exception ex)
{
System.out.println(“Erro ao Excluir”);
}
}
public void inserir(ActionEvent e)
{
try
{
Class.forName(“com.mysql.jdbc.Driver”); // verifica se existe
con=DriverManager.getConnection(“jdbc:mysql://localhost/teste?user=root”);
st=con.createStatement();
String sql=“insert into agejava values (”;
sql+=tf1.getText()+",’";
sql+=tf2.getText()+"’,’";
sql+=tf3.getText()+"’,’";
sql+=tf4.getText()+"’)";
st.execute(sql);
System.out.println(“INSERIU COM SUCESSO!”);
con.close();
}catch(Exception ex)
{
System.out.println(“Erro ao Inserir”+ex);
}
}

public static void main (String args[])
{
Agenda Age = new Agenda();
Age.show();
}
}
hack: peerless
author: desconhecido
[/code]

bons estudos!

LEMBRANDO QUE:

con=DriverManager.getConnection(“jdbc:mysql://localhost/NOME_DO_SEU_BANCO?user=root”);
st=con.createStatement();
String sql=“insert into NOME_DA_SUA_TABELA values (”;

show.

depois podemos refazer utilizando MVC. daí mais uma fonte pra estudar.

Opa, claro.

Alias, fiz ela hoje no trabalho, e ja dei uma boa melhorada…

vou postar aqui amanhã assim que chegar lá…

usando List etc.

abraços