Bom dia.
Não é mais ou menos assim, é exatamente assim! hehe…
Só fique atento a tipagem, ou seja, se é Integer no seu banco deve setar um Integer no Java e assim por diante, só um detalhe amigo, nesta linha:
Daria erro concorda? Está setando uma string em um int, então:
Todos os outros você seta uma String, mas você só coloca aspas duplas “” se quiser setar diretamente, assim:
Concorda? Porque isso: nome.getText() já retorna uma string concorda? Então o seu código seria assim:
String sql = "insert into Funcionario (codfuncionario, nome, sexo, datanascimento, telefone, observacoes) values (?, ?, ?, ?, ?, ?)";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setInt(1, Integer.parseInt(codfuncionario.getText().trim())););
pstmt.setString(2, nome.getText());
pstmt.setString(3, cbsexo.getSelectedItem().toString());
pstmt.setString(4, datanascimento.getText());
pstmt.setString(5, telefone.getText());
pstmt.setString(6, lista.getText());
pstmt.executeUpdate();
Eu recomendo que quando efetuar buscas por Strings bem como parses, você utilize ao fim da string o método trim(), assim como usei no parametro 1 (codfuncionario) para remover possíveis espaços em brancos a frente e/ou no termino da string.
Abraços.