Persistência

Pessoal,
Estou tentando aprender o que a minha faculdade não ensinou, e uma das coisas que ela não ensinou foi a conexção entre o java e um banco de dados.
O problema é o seguinte, tenho um cadastro que usa JtextField, o conteúdo desse mesmo JtextField tem que ser gravado em um banco de dados, já consegui fazer a conexção, mas não sei como capturar os dados.
Abaixo está uma parte do código.
Obs: este código eu adaptei para o meu.
Se alguém tiver algum tutorial, manual ou mesmo que possa me indicar um livro sobre o netbeans eu fico muito grato.

[code]private void atualizaclienteActionPerformed(java.awt.event.ActionEvent evt) {
try
{
Statement statement = connection.createStatement();
if ( ! jTextFields.codigo.getText().equals( "" ) )
{
String query = "UPDATE hiroko SET " +
"codigo" + jTextField.codcliente.getText() +
"nomecliente" + jTextField.nomecliente.getText() +
"endereco" + jTextField.endereco.getText() +
"cidade" + jTextField.cidade.getText() +
"uf" +jTextfield.uf.getText() +
"cgc/cpf/cnpj" + jTextField.cgccpfcnpj.getText() +
"telefone" + jTextField.telefone.getText() +
"WHERE codigo" + jTextFields.codigo.getText();

        int result = statement.executeUpdate( query );
       
        if ( result == 1 )
            JOptionPane.showMessageDialog(
           null, "Registro alterado." , "Aviso",
           JOptionPane.PLAIN_MESSAGE );
        else {
           JOptionPane.showMessageDialog(
           null, "Falha na alteração!" , "Aviso",
           JOptionPane.WARNING_MESSAGE );
           jTextField.codigo.setText( "" );
           jTextField.nomecliente.setText( "" );
           jTextField.endereco.setText( "" );
           jTextField.cidade.setText( "" );
           jTextField.uf.setText( "" );
           jTextField.cgccpfcnpj.setText( "" );
           jTextField.telefone.setText( "" );
           jTextField.email.setText( "" );
           }

        statement.close();
  else
      JOptionPane.showMessageDialog(
 
        null, "\nUse Alterar somente quando\n  " +
                       "existim registros. Use Pesquisar para\n " +
                       "localizar um registro, então\n " +
                       "modifique a informação e\n " +
                       "pressione Alterar.\n" , "Aviso",
        JOptionPane.PLAIN_MESSAGE );
  }
  catch (SQLException sqlex) {
     sqlex.printStackTrace();
     JOptionPane.showMessageDialog(
     null, sqlex.toString(), "Aviso",
     JOptionPane.WARNING_MESSAGE );
  }
    }   
}[/code]

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - Ratinho[/color][/size] :joia:

Eae… cara… so tenta colocar o teu código dentro das tags Code que tem quando tu cria uma menssagem!

mas enfim… tenta usar o PrepapeStatement… por questões de ser mais facil de usar… ter um código mais limpo… etc…:

[code]try {
// Prepare a statement to insert a record
String sql = "INSERT INTO my_table (col_string) VALUES(?,?)";
PreparedStatement pstmt = connection.prepareStatement(sql);

    // Insert 10 rows
    for (int i=0; i<10; i++) {
        // Set the value
        pstmt.setString(1, "row "+i);
        pstmt.setInt(1, jTextFieldIdade.getText());

        // Insert the row
        pstmt.executeUpdate();
    }
} catch (SQLException e) {
}[/code]

Só uma breve explicação… na linha String sql = "INSERT INTO my_table (col_string) VALUES(?)";
Contém ?… esse ponto de interrogação vai ser “subtituido” por uma String que é setada pela linha:pstmt.setString(1, "row "+i);!

É bem simples de usar… e se tu precisar de n