fiz uma conexão para fazer insert mais esta dando erro:
package model.bean;
public class ClienteCadastro {
private int id_pessoa;
private String nome;
private int idade;
private String endereco;
public int getId_pessoa(){
return id_pessoa;
}
public void setId_pessoa(){
this.id_pessoa = id_pessoa;
}
public String getNome(){
return nome;
}
public void setNome(){
this.nome = nome;
}
public int getIdade(){
return idade;
}
public void setIdade() {
this.idade = idade;
}
public String getEndereco(){
return endereco;
}
public void setEndereco(){
this.endereco = endereco;
}
}
depois:
package model.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import model.bean.ClienteCadastro;
import connection.ConnectionFactory;
public class ProdutoDAO {
public void create( ClienteCadastro p){
Connection con = ConnectionFactory.getConnection();
PreparedStatement stmt = null;
try {
stmt = con.prepareStatement("INSERT INTO tbl_pessoa (nome,idade,endereco)VALUES(?,?,?)");
stmt.setString(1,p.getNome());
stmt.setInt(2,p.getIdade());
stmt.setString(3,p.getEndereco());
stmt.executeUpdate();
JOptionPane.showMessageDialog(null, "salvo com sucesso");
} catch (SQLException ex ) {
// TODO Auto-generated catch block
JOptionPane.showMessageDialog(null, "erro ao salvar "+ex );
}finally {
ConnectionFactory.closeConnection(con);
}
}
depois:
package connection;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import com.mysql.cj.jdbc.PreparedStatement;
public class ConnectionFactory {
private static final String DRIVER = "com.mysql.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/db_unyleya";
private static final String USER = "root";
private static final String PASS = "1234";
public static Connection getConnection(){
try {
Class.forName(DRIVER);
return DriverManager.getConnection( URL , USER , PASS );
} catch (ClassNotFoundException | SQLException ex ){
throw new RuntimeException (" erro ao conectar: " , ex );
}
}
public static void closeConnection(Connection con) {
try {
if (con != null){
con.close();
}
} catch (SQLException ex ){
//throw new RuntimeException (" erro na conexão: " , ex );
Logger.getLogger(ConnectionFactory.class.getName()).log(Level.SEVERE, null, ex );
}
}
public static void closeConnection(Connection con , PreparedStatement stmt ) {
closeConnection(con);
try {
if (stmt != null){
stmt.close();
}
} catch (SQLException ex ){
//throw new RuntimeException (" erro na conexão: " , ex );
Logger.getLogger(ConnectionFactory.class.getName()).log(Level.SEVERE, null, ex );
}
}
public static void closeConnection(Connection con ,PreparedStatement stmt, ResultSet rs ) {
closeConnection(con,stmt);
try {
if (rs != null){
rs.close();
}
} catch (SQLException ex ){
//throw new RuntimeException (" erro na conexão: " , ex );
Logger.getLogger(ConnectionFactory.class.getName()).log(Level.SEVERE, null, ex );
}
}
estou tomado erro neste código. Chegou o momento de pegar as variáveis de dar insert, o que fazer?
private class SalvarAction implements ActionListener{
public void actionPerformed(ActionEvent event ) {
ClienteCadastro p = new ClienteCadastro();
ProdutoDAO dao = new ProdutoDAO();
p.setNome(nomeField.getText());
p.setEndereco(enderecoField.getText());
p.setIdade(Double.parseDouble(idadeField.getText()));
dao.create(p);
// System.out.println("erro " );
}
}