Java+Mysql

Salve, estou tentando fazer uma query com java e mysql mas estou começando agora e não sei quase nada, se alguém poder me dar umas dicas, queria que ao clicar no botão cadastrar ele insira os dados no banco de dados… segue o código que estou tentando:

import java.sql.*;
import javax.swing.*;
import java.awt.event.*;

public class mySql extends JFrame {
	
	JLabel l1, l2;
	JButton botao;
	JPanel panel;
	JTextField text1, text2;
	
	mySql() {
		
		text1 = new JTextField(20);		
		
		text2 = new JTextField(2);
		
		l1 = new JLabel();
		l1.setText("Nome ");
		
		l2 = new JLabel();
		l2.setText("UF ");
		
		botao = new JButton("Cadastrar");
		botao.addActionListener(new MyAction());
		
		panel = new JPanel();
		
		panel.add(l1);
		panel.add(text1);
	    panel.add(l2);
	    panel.add(text2);
	    panel.add(botao);
	    
		this.setLocation(400,200);
	    this.setVisible(true);
		this.getContentPane().add(panel);
	    this.setDefaultCloseOperation(EXIT_ON_CLOSE);
	    this.setSize(500,500);
	    this.setTitle("Banco de Dados");
	}
	
	public class MyAction implements ActionListener {
			public void actionPerformed(ActionEvent ae) {
				if (ae.getSource() == botao) {
			Statement stExec = connection.createStatement();
			stExec.executeUpdate("insert into cliente................");
			stExec.close();
			   }
			}
		 }

	

public static void main(String[] args) {

    mySql on = new mySql();

    java.sql.Connection connection = null;
  try {
  String driverName = "org.gjt.mm.mysql.Driver"; 
  Class.forName(driverName);

   String servidor = "localhost";
   String nomeDoBanco = "teste";
   String url = "jdbc:mysql://" + servidor + "/" + nomeDoBanco;
   String login = "root";
   String senha = "jacudo";
   connection = DriverManager.getConnection(url, login, senha);
} 

   catch (ClassNotFoundException e) 
{

System.out.println("O driver expecificado não foi encontrado."); 
} 
   catch (SQLException e) 
{
         System.out.println("Não foi possível conectar ao Banco de Dados"); 
     }
   }
}

poste o erro que esta ocorrendo, fika mais facil ajudar

vlws

Vou postar o meu… mas ta um pouco diferente…

[code]package Banco;
import java.sql.*;

public class Conect {
public Connection Conecta(){
Connection conexao = null;

 try {
	Class.forName("com.mysql.jdbc.Driver");
	
} catch (ClassNotFoundException c) {
	// TODO Auto-generated catch block
	c.printStackTrace();
    System.out.println("ERRO" + c.getMessage());
}

 try {
	String url = "jdbc:mysql://localhost/loja";
	 conexao = DriverManager.getConnection(url , "root", "root");
} catch (SQLException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
	System.out.println("ERRO URL" + e.getMessage());
}

return conexao;

}

public void inclui( int a , String b , String c, String d, String e ,String f, String g ,String h , String i ,String j , String l ){
try {
Connection conexao = Conecta();
PreparedStatement st = conexao.prepareStatement(“Insert into cliente values (?,?,?,?,?,?,?,?,?,?,?);”);
st.setInt(1, a);
st.setString(2, b);
st.setString(3, c);
st.setString(4, d);
st.setString(5, e);
st.setString(6, f);
st.setString(7, g);
st.setString(8, h);
st.setString(9, i);
st.setString(10, j);
st.setString(11, l);

	  st.executeUpdate();
	   // System.out.println("Teste"); Serve para testear se ta funcionando.
	     st.close();
	     conexao.close();
} catch (SQLException e1) {
	// TODO Auto-generated catch block
	e1.printStackTrace();
	
} 

}

}
[/code]

ehghh aeh depois tem q add la na classe Evento olha la como tah…

[code]package Modelo;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.ParseException;

import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
import javax.swing.text.MaskFormatter;

import Banco.Conect;
import Modelo.TelaPrinciapal.Evento;

public class CadastroCliente extends JFrame{
JLabel nome = new JLabel(“NOME”);
JLabel nasc = new JLabel(“DATA DE NASCIMENTO”); // Rotulos!
JLabel tel = new JLabel(“TELEFONE”);
JLabel email = new JLabel(“E-MAIL”);
JLabel endereco = new JLabel(“ENDEREÇO”);
JLabel bairro = new JLabel(“BAIRRO”);
JLabel aviso = new JLabel(“OBS. O CAMPO DO CPF É OBRIGATORIO!”);

JLabel cidade = new JLabel("CIDADE");
JLabel estado = new JLabel("ESTADO");
JLabel pais = new JLabel("PAIS");
JLabel cep = new JLabel("CEP");
JLabel cpf = new JLabel("CPF");
         

JTextField jnome = new JTextField();
JTextField jnasc;              // Textfield com mascara.
JTextField jtel;
JTextField jemail = new JTextField(); // Caixas de texto!
JTextField jendereco = new JTextField();
JTextField jbairro = new JTextField();
JTextField jcidade = new JTextField();
JTextField jestado = new JTextField();
JTextField jpais = new JTextField();
JTextField jcep = new JTextField();
JTextField jcpf = new JTextField();

JButton ok = new JButton("CADASTRA");
JButton cancela = new JButton("CANCELA");

MaskFormatter mnasc , mtel; // Mascara.

JRadioButton jb1 =new JRadioButton("MASCULINO");
JRadioButton jb2 =new JRadioButton("FEMININO");
ButtonGroup grupo = new ButtonGroup();
String a;

JOptionPane j = new JOptionPane();
private JFormattedTextField mn;

public CadastroCliente(){
	setLayout(null);
	setVisible(true);
	setSize(600,335);
	setResizable(false);
    
	
	getContentPane().add(nome);
	getContentPane().add(nasc);
	getContentPane().add(tel);
	getContentPane().add(email);
	getContentPane().add(endereco);
	getContentPane().add(cidade);
	getContentPane().add(estado);
	getContentPane().add(pais);
	getContentPane().add(cep);
	getContentPane().add(cpf);
	getContentPane().add(jnome);
	getContentPane().add(bairro);
	getContentPane().add(jbairro);
    getContentPane().add(aviso);
	
	getContentPane().add(jemail);
	getContentPane().add(jendereco);
	getContentPane().add(jcidade);
	getContentPane().add(jestado);
	getContentPane().add(jpais);
	getContentPane().add(jcep);
	getContentPane().add(jcpf);
	
	nome.setSize(80, 20);
	nome.setLocation(10, 20);
	
	jnome.setSize(300, 20);
	jnome.setLocation(50,20);
	
	nasc.setSize(150,40);
	nasc.setLocation(355,10 );

	aviso.setSize(300,20);
	aviso.setLocation(280,280);
	
	tel.setSize(80,20);
	tel.setLocation(10,60);
	
	
	
	email.setSize(100,20);
	email.setLocation(250,60);
	
	jemail.setSize(280, 20);
	jemail.setLocation(300,60);
	
	endereco.setSize(100, 20);
    endereco.setLocation(10,100);
    
    jendereco.setSize(500,20);
    jendereco.setLocation(80,100);   	
    
    bairro.setSize(100,20);
    bairro.setLocation(10,140);
    
   jbairro.setSize(250,20);
    jbairro.setLocation(60,140);
    
    cidade.setSize(100,20);
    cidade.setLocation(320,140);
    
    jcidade.setSize(210,20);
    jcidade.setLocation(370,140);
    
	estado.setSize(100,20);
	estado.setLocation(10,170);
	
	jestado.setSize(240,20);
	jestado.setLocation(70,170);
	
	pais.setSize(100,20);
	pais.setLocation(330,170);
    
	jpais.setSize(210,20);
	jpais.setLocation(370,170);
    
	cpf.setSize(40,20);
	cpf.setLocation(10,200);
	
	jcpf.setSize(150,20);
	jcpf.setLocation(40,200);
    
	
	getContentPane().add(ok);
	getContentPane().add(cancela);
	
	
	ok.setSize(150,40);
	ok.setLocation(200,220);
	ok.addActionListener(new Evento());
	
	cancela.setSize(210,40);
	cancela.setLocation(370,220);
	cancela.addActionListener(new Evento());
	
	JPanel p = new JPanel();
	grupo.add(jb1);
	grupo.add(jb2);
	p.setBorder(BorderFactory.createEtchedBorder());
	p.setBounds(10, 230, 100,70 );
	p.add(jb1);
	p.add(jb2);
	
	
	
	
	
	getContentPane().add(p);

	
	
	
	
	try {
		mnasc = new MaskFormatter("##/##/####");
		mtel = new MaskFormatter("(##) #### - ####");
	} catch (ParseException e) {
		System.out.println("Erro na mascra");
		e.printStackTrace();
	}
	
	mnasc.setPlaceholder("");
	jnasc = new JFormattedTextField(mnasc);
	getContentPane().add(jnasc);
	jnasc.setSize(80,20);
	jnasc.setLocation(500,20);
	jnasc.setVisible(true);
	jnasc.setText("00000000");
	
	mtel.setPlaceholder("");
	jtel = new JFormattedTextField(mtel);
	getContentPane().add(jtel);
	jtel.setSize(150,20);
	jtel.setLocation(70,60);
    jtel.setVisible(true);	
    jtel.setText("0000000000");
	
    
    
}


 class Evento implements ActionListener{
	
	 public void actionPerformed(ActionEvent e){
	
		
		
    	 if (e.getSource() == ok ){
			if (jb1.isSelected()){
				a = "Masculino";
									
			}
			
			
			if(jb2.isSelected()){
				a = "Feminino";
			}
			
			Conect c;
			c = new Conect();
			c.inclui(Integer.parseInt(jcpf.getText()),jnome.getText(), jendereco.getText(), jnasc.getText(), jtel.getText(), jemail.getText(), jbairro.getText(), 
				jcidade.getText(),jestado.getText(), jpais.getText(),a);
			limpa();
			j.showMessageDialog(null,"CLIENTE CADASTRADO COM SUCESSO!" );
    	
    	 
    	
    	 }
		
		
		
		if ( e.getSource() == cancela){
			limpa();
		}
     }
	 
	 

}

public void limpa(){

 jnome.setText("m ");
	jnasc.setText("00000000 ");
	jtel.setText("0000000000 ");
	jemail.setText(" ");
	jendereco.setText(" ");
	jbairro.setText(" ");
	jcidade.setText(" ");
	jestado.setText(" ");
	jpais.setText(" ");
	jcep.setText(" ");
	jcpf.setText(" ");
	
	grupo.clearSelection(); // Desfaz a seleção dos JRadioButton.

}
}
[/code]

Da uma olhada aeh e ve se te serve.
Espero ter te ajudado em algo.
Rodrigo Lipertte

Cara vlw! mas eu não entendi este método:

#  public void inclui( int a , String b , String c, String d, String e ,String f, String g ,String h , String i ,String j , String l ){  
#       try {  
#           Connection conexao = Conecta();  
#         PreparedStatement st = conexao.prepareStatement("Insert into cliente values (?,?,?,?,?,?,?,?,?,?,?);");  
#           st.setInt(1, a);  
#           st.setString(2, b);  
#           st.setString(3, c);  
#           st.setString(4, d);  
#           st.setString(5, e);  
#           st.setString(6, f);  
#           st.setString(7, g);  
#           st.setString(8, h);  
#           st.setString(9, i);  
#           st.setString(10, j);  
#           st.setString(11, l);  
#             
#           st.executeUpdate();  
#            // System.out.println("Teste"); Serve para testear se ta funcionando.  
#              st.close();  
#              conexao.close();  
#     } catch (SQLException e1) {  
#         // TODO Auto-generated catch block  
#         e1.printStackTrace();  
#           
#     }   
#   }  
#   
#   
#   
# }  

Tipo é essa a idéia que eu tinha, a lógica eu peguei, mas não estou conseguindo encaixar no meu código, nesta parte da um erro

Connection conexao = Conecta();
PreparedStatement st = conexao.prepareStatement("Insert into cliente values )

n saquei bem, se puder dar um help… Vlw!

abçs.

Ae funfo :wink: dei uma lida la na API e entendi… Vlw mesmo cara… abçs!

Ahh isso eu tbm me compliquei no começo kkkk.
Mas olha so…
Esse metodo e oq insere dentro do banco… nesse caso eu to usando o MySQL.

[code] public void inclui( int a , String b , String c, String d, String e ,String f, String g ,String h , String i ,String j , String l ){
try {
Connection conexao = Conecta();
PreparedStatement st = conexao.prepareStatement(“Insert into cliente values (?,?,?,?,?,?,?,?,?,?,?);”); //Esses ? servem para simbolizar as var do banco sabe… tipo cpf , nome e coisa e tals…

       st.setInt(1, a);    //aki siquinifica q é o primeiro ponto (?) e ele tem o nome de a.
       st.setString(2, b);    
       st.setString(3, c);    
      st.setString(4, d);    
      st.setString(5, e);    
       st.setString(6, f);    
       st.setString(7, g);    
       st.setString(8, h);    
       st.setString(9, i);    
       st.setString(10, j);    
      st.setString(11, l);    
          
      st.executeUpdate();    
        // System.out.println("Teste"); Serve para testear se ta funcionando.    
          st.close();    
          conexao.close();    
 } catch (SQLException e1) {    
     // TODO Auto-generated catch block    
     e1.printStackTrace();    
         
 }     

}

} [/code]

O resto acho q não tem mistério mas qualquer coisa vc me pergunta q eu te respondo…
meu msn é digolipertte@hotmail.com mas tah meio dificil de eu entrar no msn. meu e-mail é digolipertte@pop.com.br é atualizado todo dia.
Abração… E qualquer duvida é so avisar.